急需!java出错,非法字符、不是语句 求解释!!!

不知道错在哪里了?求大神帮忙解释下,谢谢啦!!
import java.util.Scanner; public class shiyan3{
public static void main(String[] args){
String myName; int myID;
Scanner sc=new Scanner(System.in); myID=sc.nextInt(); myName=sc.nextLine();
System.out.println(myName); System.out.println(myID); char myChar[]= myName.toCharArray(); System.out.printf("我叫%s,我的学号是%d.",myName,myID); System.out.println("我姓 "+myChar[0]+","+"我的名字是 "+myChar[1]+myChar[2]); System.out.printf("%c(%h)",myChar[0],myChar[0]); System.out.printf("%c(%h)",myChar[1],myChar[1]); System.out.printf("%c(%h)",myChar[2],myChar[2]); myID=~myID; System.out.printf("我的学号求反后是:",myID); }}

System.out.printf("我的学号求反后是:",myID); 逗号不对

另外我dubug了下 发现
Scanner sc=new Scanner(System.in);
myID=sc.nextInt();
sc=new Scanner(System.in); 添加了这一行,不加的话 直接走下一行代码,myName为 “”,下面就越界了
myName=sc.nextLine();

经过测试 用 myName=sc.next(); 就不需要再初始化 sc

API上的解释
nextLine
public String nextLine()
此扫描器执行当前行,并返回跳过的输入信息。
此方法返回当前行的其余部分,不包括结尾处的行分隔符。当前位置移至下一行的行首。

你使用nextInt()的时候,读取一定是数值型的字符,就是说你会输入42这样的,然后就按换行符
接着使用nextLine(),它是读到行分隔符就结束,而行分隔符前已经没信息,所以没有读到任何可返回的信息。
温馨提示:内容为网友见解,仅供参考
第1个回答  2014-03-28
System.out.printf("我的学号求反后是:",myID);
你这句中,有一个逗号,是中文的逗号,改成英文的就好了,(,)和(,)是有区别的,5044群5871,最好你还要检查一下其他标点符号有用叉的没有,进群来哦,我也新手,自学的,望采纳
第2个回答  2014-03-28
System.out.println(("我的学号求反后是:",myID);

println 不是 printf 中间的逗号要用英文状态的逗号
第3个回答  2014-03-28
System.out.printf("我的学号求反后是:",myID);
上面这句话里面的逗号是中文的,换成英文符号
第4个回答  2014-03-28
System.out.printf("我的学号求反后是:%d",myID);

java不是语句是什么意思
程序中出现了没有任何意义的字符。java不是语句是一句程序用语,意思是程序中出现了没有任何意义的字符,是无意中打出了没有。

java中提示 不是语句
原因一:没有引入相应的jar包,可以通过Ctrl+shift+o引入需要的包。原因二:当前的java类不存在,那么就会报错找不到这个类。原因三:没有引入相应的jar包,这个错误需要将jar添加到lib下。

JAVA程序提示找不到符号,求大神帮解答
应该是初学Java吧,还是没认真学过哦,看了你第一段代码,语句System.out.printIn("You have entered: " + n + " and " + d );有错,你把println的小写‘L’(大写以方便辨析)写成大写的‘i’(小写以方便辨析)了,所以很难看错有什么错,第二段代码应该也是同样的错吧,试试看!(哥们...

java报错 :不是语句
首先,正如上面俩人说的一样,你的for语句的第一个条件的写法不对 改为j=1 其次,contiue outer;你没看出来,关键字有错误么? 是continue 还有,你的n没有初值,执行到n++会出现错误!!最好在声明时赋值 n=0 语法有很多错误,建议多看看书,熟悉一下基础知识!

JAVA提示 错误不是语句
public static void main( String[] argv ) {\/\/ main function System.out.println( "HelloWorld." ); \/\/print the right sentence \/\/HelloWorld!; 此处没有注释啊。。 return; \/\/ program finished. }

为什么 我写的java提示非法字符
1、括号是中文括号,改成英文括号 2、双引号 是中文的,该英文 3、不是语句,估计是语句后面;分号没有

java编程为什么提示“非法字符uff1b”?
因为md一般对汉字很明感。解决方法:代码错误出现在第一个行,而且是非法字符,可能是你键入了某些无法识别的。就像利用输入法智能ABC输入v11,表面看起来是一个空格,但是其实他有自己的编码。你可以把第一行完全删除,重新打一遍包名试试!

JAVA报错不是语句
import java.sql.Connection;import java.sql.DriverManager;import java.sql.Statement;public class Datain {public void oraclein(String[] a, int[] b, int[][] c) throws Exception {Class.forName("com.mysql.jdbc.Driver");String connstr = "jdbc:mysql:\/\/localhost:3306\/mydb";Connection...

java 错误: 不是语句
{int i=162;public static void main(String[] args) {Mytime a=new Mytime(1995,2,6);a.display(); \/\/这是方法调用,要有括号!System.out.println("Hello World!");}}class Mytime{int hour;int minute;int second;public Mytime(int a,int b,int c)\/\/构造器,不应有返回值类型...

java 错误:不是语句 System.out.printin(String);("Hello World"); ^...
System.out.printin中的printin写错了,应该是 System.out.println改下就对了

相似回答