黑马程序员技术交流社区
标题:
写出以下代码执行结果,分析为什么?
[打印本页]
作者:
幺零夭夭
时间:
2015-11-3 22:04
标题:
写出以下代码执行结果,分析为什么?
public class Test7 {
public static void main(String[] args) {
// TODO Auto-generated method stub
String s = "abc";
s.substring(1);
s.replace("bc", "xyz");
System.out.println(s);
String value = new String ("abc");
System.out.println(s == value);
}
/**
* 结果分析:
* 1.为什么打印abc:因为s.substring(1);s.replace("bc", "xyz");
* 替换了值没有变量接收结果相当于值未改变,使用输出没有变化
* 例如:s=s.substring(1);和s=s.replace("bc", "xyz");即可变化
* 2.输出false:因为String s = "abc";在常量池中,
* new String ("abc")在内存中开辟了空间地址
* ==比的是地址,使用时false。
* 例如使用s.equals(value)即可为true
*/
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2