关于String声明的一个问题 s2 += s-->s2=s2+s-->s2和s都需要初始化,因为为s = in.readLine()因此只要s2初始化就可以了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 因为你这个语句有问题:String s2,s = new String();JAVA是个严谨的语言,跟VB不一样,你这样写的话只是初始化了s,而s2并没有被初始化。String s2 = null;String s = null; String s2,s = new String();相当于声明String s2; String s=new String();在java rules这书里String s2,s = new String();这种做法是不提倡的 需要这样的考虑的!你的s2 += s + "\n";本身其中还涉及到一个原始的s2的值的问题,肯定需要但是你的String s2,s = new String(); 只是定义一个存储的空间,根本不能替代原始的初值但是你的s 由于 是s = in.readLine())的那么只需要一个空间就可以那所以编译会认为你的s2没有初始化! String s2,s = new String();不能这样偷懒 java里重要的一点:局部变量必须在始用前初始化。编译的提示是s2“可能”没有初始化,也就是说while条件不一定成立,那么打印s2当然就不行了。但,s却不同,它在使用前是初始化了的。 String s2,s = new String();这样是申明了s2和s,但是只初始化了sString s,s2 = new String();这样是申明了s和s2,但是只初始化了s2String s,s2=new String();不等同于String s=new String();String s2=new String(); s2+=s+"\n" 即s2=s2+s+"\n" 表达式中存在没有初始化的变量s2 求读取execl文件的方法 刷新ResultSet对象时却出现了异常,请教高手给予指点。 怎样遍历一个 jpanel 的所有按钮? 关于用JDBC连接SQL Server 2000,急,在线等待! 如何用程序将jtable滚动到某一行? WIN2000不能用VJ++6.0吗? 关于java读取excel 怎么样判断一个类是否已经被实例化,并关闭这个实例,而且保证系统不退出(详情见内) java小问题,清指教 解决一个小问题…… 高手帮忙,怎样保存?在线等。。。 java代码 问题请求解析!
JAVA是个严谨的语言,跟VB不一样,你这样写的话只是初始化了s,而s2并没有被初始化。
String s2 = null;
String s = null;
相当于声明String s2;
String s=new String();
在java rules这书里String s2,s = new String();这种做法是不提倡的
但是你的String s2,s = new String(); 只是定义一个存储的空间,根本不能替代原始的初值但是你的s 由于 是s = in.readLine())的那么只需要一个空间就可以那所以编译会认为你的s2没有初始化!
但,s却不同,它在使用前是初始化了的。
这样是申明了s2和s,但是只初始化了s
String s,s2 = new String();
这样是申明了s和s2,但是只初始化了s2
String s,s2=new String();不等同于String s=new String();String s2=new String();