String 的特点:
长度一旦定义了,就不可以改变,即使改变也是重新new的
举例:
public class Test {
public static void stringReplace(String text) {
text = text.replace('j', 'i');
System.out.println("新的对象:" + text);
}
public static String stringReplace2(String text) {
return new String(text);
}
public static void main(String args[]) {
String s1 = "a";
String s2 = "a";
System.out.println("s1== s2: " +(s1 == s2));
System.out.println("s1.equals(s2) " + s1.equals(s2));
String news1 = new String("a");
String news2 = new String("a");
System.out.println("news1.equals(news2): " + news1.equals(news2));
System.out.println("news1 == news2: " + (news1 == news2));
/**
只要重新new过,即使值相同,地址也不同
*/
String textString = new String("java");
stringReplace(textString);
System.out.println(textString);
/**
* 结果:java
* 说明:传过去的值被改变成了iava,意思是在内存区域(堆)中重新new
* 了一块,值是“iava”,在stringReplace()中,是textString的引用赋给了text,指向了
“iava”,但是一旦方法执行完毕
* 局部变量text也就消失,在打印textString时,还是指向原来的“java”区域。
*/
结果:s1== s2: true
s1.equals(s2) :true
news1.equals(news2): true
news1 == news2: false
新的对象:iava
java
分享到:
相关推荐
java.lang.NumberFormatException For inputstring 4294967295处理方法
解决 java.lang.NoSuchFieldError: STRING at org.jbpm.identity.hibernate.PermissionUserType. 不用jbpm的jbpm-identity.jar 用这个就好
搜集整理关于java错误处理:java.lang.OutOfMemoryError: Java heap space java.lang.OutOfMemoryError: Java heap space 资料整理
java.lang.OutOfMemoryError: Java heap space 解决方法
Caused by: java.lang.OutOfMemoryError: PermGen space解决方案, avax.servlet.ServletException: java.lang.OutOfMemoryError: PermGen space at org.apache.jasper.servlet.JspServlet.service(JspServlet.java...
报错 java.lang.OutOfMemoryError: PermGen space 报错 java.lang.OutOfMemoryError: Java heap 启动报错java.lang.ClassNotFoundException: 1catalina.org.apache.juli.FileHandler JAVA_OPTS="-server -Xms800m ...
整个系统都没有错误,但是在发布运行后,控制台上却抛出了这样的异常: java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSource
java.lang.runtimeexception unexpected subelement
scrcpy投屏 AssertionError: java.lang.reflect.InvocationTargetException 安装这个版本的scrcpy即可。
JSON转化时出现 java.lang.ClassNotFoundException: net.sf.ezmorph.MorpherRegistry
java.lang.OutOfMemoryError: PermGen space 解决方案
记录java.lang.OutOfMemoryError:Java heap space的情况 文章内容: 一.问题描述+原因分析+解决方案 二.JVM调优说明 三.Tomcat添加到jvisualvm监控
java.lang.NoClassDefFoundError: de/javakaffee/kryoserializers/CurrencySerializer
java解决nested exception is java.lang.OutOfMemoryError Java heap space 解决OOM
java.lang.UnsupportedOperationException异常(csdn)————程序
"java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver" 解决方案 [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket. 解决了jsp连接 sql server 2000的问题
at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:688) at java.lang.ClassLoader.loadClass(ClassLoader.java:667) at com.ibm.ws.bootstrap.ExtClassLoader.loadClass(ExtClassLoader.java:119) at...
java 9 中引入了模块的概念,默认情况下,Java SE中将不再包含java EE 的Jar包 而在 java 6/7 / 8 时关于这个API 都是捆绑在