Java 简明教程
Java - Strings Class
Creating Strings
创建字符串的最直接的方法是编写 −
String greeting = "Hello world!";
每当在代码中遇到字符串文字时,编译器都会创建一个 String 对象,其值在此情况下为“Hello world!”。
与任何其他对象一样,您可以使用 new 关键字和构造函数创建 String 对象。String 类有 11 个构造函数,允许您使用不同的来源(如字符数组)来提供字符串的初始值。
Creating String from Char Array Example
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 );
}
}
这会产生以下结果 −
Output
hello.
Note - String 类是不可变的,所以一旦创建了 String 对象就无法对其进行更改。如果有必要对字符 Strings 进行大量修改,那么您应该使用 String Buffer & String Builder 类。
String Length
用于获取有关对象的信息的方法称为 accessor methods。您可以与字符串一起使用的一个访问器方法是 length() 方法,该方法返回字符串对象中包含的字符数。
以下程序是 length() 方法 String 类的一个示例。
Getting Length of the String Example
public class StringDemo {
public static void main(String args[]) {
String palindrome = "Dot saw I was Tod";
int len = palindrome.length();
System.out.println( "String Length is : " + len );
}
}
这会产生以下结果 −
Concatenating Strings
String 类包括用于连接两个字符串的方法 −
string1.concat(string2);
这会返回一个新的字符串,该字符串是 string1 和 string2 添加到其末尾的结果。您还可以在字符串文字中使用 concat() 方法,例如 −
"My name is ".concat("Zara");
字符串更常与 + 运算符连接,如 −
"Hello," + " world" + "!"
结果 −
"Hello, world!"
让我们看以下示例 −
Concatenating String Example
public class StringDemo {
public static void main(String args[]) {
String string1 = "saw I was ";
System.out.println("Dot " + string1 + "Tod");
}
}
这会产生以下结果 −
Creating Formatted Strings
可以使用 printf() 和 format() 方法打印带格式数字的输出。String 类有一个等效类方法 format(),它返回一个 String 对象,而不是一个 PrintStream 对象。
使用 String 的 static format() 方法允许您创建一个可重用的格式化字符串,而不是一个一次性打印语句。例如,而不是 −
Formatted String Example
System.out.printf("The value of the float variable is " +
"%f, while the value of the integer " +
"variable is %d, and the string " +
"is %s", floatVar, intVar, stringVar);
您可以编写 −
String fs;
fs = String.format("The value of the float variable is " +
"%f, while the value of the integer " +
"variable is %d, and the string " +
"is %s", floatVar, intVar, stringVar);
System.out.println(fs);
String Methods
以下是 String 类支持的方法的列表 −