已采纳回答 / GDHGN
其实呢,在第一次使用字符串引用的使用,也是通过new来创建字符串的,只是隐式的new一个字符串对象,在你第二次使用同一个字符串的时候,会查找堆内存中有没有和该字符串一样的,如果有就直接引用这个堆中已经有的字符串对象,如果没有,还是会new一个;而直接使用new的方法,创建字符串,是不管堆中有没有,直接创建一个新的对象,所以在比较的时候,都是false;
2018-02-28
好开心哦,虽然第一次看老师的这一节课有点模糊,后来结合评论里面一些大神们的总结和经验,然后再快速看了一遍这一节,我就看懂了。其他同学们也可以试一试这样做哦。
2018-02-28
// 获取文件的后缀
String prefix = fileName.substring(index);
结果显示运行成功,输出失败;
而String prefix = fileName.substring(index+1);
结果则显示运行成功
为啥会这样?原因是使用 substring(beginIndex ) 进行字符串截取时,包括了 beginIndex 位置的字符,而上面代码fileName.substring(index)中的index是'.'的位置,而不是后缀名"java"的位置,所以要+1
String prefix = fileName.substring(index);
结果显示运行成功,输出失败;
而String prefix = fileName.substring(index+1);
结果则显示运行成功
为啥会这样?原因是使用 substring(beginIndex ) 进行字符串截取时,包括了 beginIndex 位置的字符,而上面代码fileName.substring(index)中的index是'.'的位置,而不是后缀名"java"的位置,所以要+1
2018-02-27
我感觉到这里会有很多人忘记了如何定义数组和foreach的使用
数组int[] nums = new int[10];
foreach:for(元素类型 元素变量:遍历对象){
执行的代码
}
数组int[] nums = new int[10];
foreach:for(元素类型 元素变量:遍历对象){
执行的代码
}
2018-02-27
最赞回答 / 故梦大人i
举一个简单的应用场景:一个用java搭建的Web服务器,在执行数据库查询的时候发现目标数据库有异常,然后抛Exception了。然后你觉得是应该把Exception抓住并分析处理还是让程序直接终止掉呢?直接终止的处理方法对于一个需要持续运行的Web服务器来说是无法接受的。而且在很多地方Exception可以用来传递消息,并不是错误让自己解决了就行了的,需要让外界知道并把处理权交给外界的调用者。 在可能出现异常,并且根据抛出的不同异常有不同的对象对其进行解析、处理的时候,可以用异常链来传递和分级处理我们遇到...
2018-02-27
for (int i =str.length()-3;i>=0;i=i-3){
str.insert(i,',');
}
str.insert(i,',');
}
2018-02-27