创建字符串
创建字符串最简单的方式如下:
String str = "Hello World!";
在代码中遇到字符串常量时,这里的值是 “Hello World!”",编译器会使用该值创建一个 String 对象。
和其它对象一样,可以使用关键字和构造方法来``创建 String 对象。
用构造函数创建字符串:
String str2=new String("Hello World!");
String 创建的字符串存储在公共池中,而 new 创建的字符串对象在堆上:`
String s1 = "Hello World!"; // String 直接创建
String s2 = "Hello World!"; // String 直接创建
String s3 = s1; // 相同引用
String s4 = new String("Hello World!"); // String 对象创建
String s5 = new String("Hello World!"); // String 对象创建
String 类有 11 种构造方法,这些方法提供不同的参数来初始化字符串,比如提供一个字符数组参数:
public class StringDemo{
public static void main(String args[]){
char[] helloArray = { 'H', 'e', 'l', 'l', 'o'};
String helloString = new String(helloArray);
System.out.println( helloString );
}
}
以上实例编译运行结果如下:
Hello
连接字符串
String 类提供了连接两个字符串的方法:
string1.concat(string2);
返回 string2 连接 string1 的新字符串。也可以对字符串常量使用 concat() 方法,如:
"我的名字是 ".concat("xyz");
更常用的是使用’+'操作符来连接字符串,如
"Hello," + " World " + "!"
创建格式化字符串
我们知道输出格式化数字可以使用 printf() 和 format() 方法。
String 类使用静态方法 format() 返回一个String 对象而不是 PrintStream 对象。
String 类的静态方法 format() 能用来创建可复用的格式化字符串,而不仅仅是用于一次打印输出。
如下所示:
System.out.printf("浮点型变量的值为 " +
"%f, 整型变量的值为 " +
" %d, 字符串变量的值为 " +
"is %s", floatVar, intVar, stringVar);
你也可以这样写
String fs;
fs = String.format("浮点型变量的值为 " +
"%f, 整型变量的值为 " +
" %d, 字符串变量的值为 " +
" %s", floatVar, intVar, stringVar);