string 缓冲区转化原理

xiaoxiao2021-02-28  5

public class Demo3_String { public static void main(String[] args) { //demo3(); //demo4(); String s1="ab";//常量 String s2="abc";//常量 String s3=s1+"c";//变量 System.out.println(s3==s2); System.out.println(s3.equals(s2)); } private static void demo4() { // byte b=3+4; 在编译时有常量优化机制,把7赋值给b String s1="a"+"b"+"c"; String s2="abc"; System.out.println(s1==s2);//true,java中有常量优化机制 System.out.println(s1.equals(s2));//true } private static void demo3() { // 将此字符串与指定的对象比较。当且仅当该参数不为 null,并且是与此对象表示相同字符序列的 String 对象时,结果才为 true。 String s1="abc";//记录常量的地址值 String s2="abc"; String s3= new String("abc");//记录堆的地址值 System.out.println(s1== s3);//false System.out.println(s1.equals(s3)+",s1=s3的值"); System.out.println(s2.equals(s1)); if (s1.equals(s2)) { System.out.println("名字相同"); }else { System.out.println("名字不同"); } }

转载请注明原文地址: https://www.6miu.com/read-1150391.html

最新回复(0)