package com.brooke01;
public class StringDemo {
public static void main(String[] args) {
//方式一
String str1 = new String("helloworld");
System.out.println("str1:"+str1);
//方式二
char[] chs = {'h','e','l','l','o'};
String str2 = new String(chs);
System.out.println("str2:"+str2);
//方式三
String str3 = new String(chs,1,4);
System.out.println("str3:"+str3);
//方式四
String str4 = "hello";
System.out.println("str4:"+str4);
}
}
- 构造方法创建字符串对象与直接赋值方式创建对象的区别:
package com.brooke01;
/*
* 构造方法创建字符串对象:堆内存
* 直接赋值方式创建对象:方法区的常量池
*/
public class StringDemo2 {
public static void main(String[] args) {
String str1 = new String("hello");
String str2 = "hello";
String str3 = "hello";
System.out.println("str1=str2 "+(str1 == str2));
System.out.println("str2=str3 "+(str2 == str3));
}
}
结果:
str1=str2 false
str2=str3 true