1.5.1 构造方法
● 初始化新创建的 String 对象,表示空字符序列:
public String(){}
初始化一个新创建的 String 对象,使其表示一个和参数相同的字符序列;换言之,新创建的字符串是该参数字符串的副本
public String(String original){}
通过当前参数中的字符数组来构造新的 String :
public String(char[] value){}
通过字符数组的一部分来构造新的 String :
public String(char[] value,int offset, int count){}
通过使用平台的默认字符集解码当前参数中的字节数组来构造新的 String :
public String(byte[] bytes){}
通过使用指定的字符集解码当前参数中的字节数组来构造新的 String :
public String(byte[] bytes,String charsetName){}
示例:
package com.github.string.demo4;
import java.io.UnsupportedEncodingException;
/**
* @author maxiaoke.com
* @version 1.0
*/
public class Test {
public static void main(String[] args) throws UnsupportedEncodingException {
// 字符串常量对象
String str = "hello";
System.out.println("str = " + str);
// 无参构造
String str1 = "";
System.out.println("str1 = " + str1);
// 创建"hello"字符串常量的副本
String str2 = new String("hello");
System.out.println("str2 = " + str2);
// 通过字符数组创建
char[] chs = {'a', 'b', 'c', 'd'};
String str3 = new String(chs);
String str4 = new String(chs, 0, 3);
System.out.println("str3 = " + str3);
System.out.println("str4 = " + str4);
// 通过字节数组构造
byte bytes[] = {97, 98, 99 };
String str5 = new String(bytes);
String str6 = new String(bytes,"utf-8");
System.out.println("str5 = " + str5);
System.out.println("str6 = " + str6);
}
}
1.5.2 静态方法
● 返回指定数组的 String :
public static String valueOf(char data[]) {}
返回指定数组的 String(指定子数组的开始索引和子数组的长度):
public static String valueOf(char data[], int offset, int count){}
返回各种类型的 value 的 String :
public static String valueOf(xx value) {}
示例:
package com.github.string.demo5;
/**
* String的静态方法
*
* @author maxiaoke.com
* @version 1.0
*/
public class Test {
public static void main(String[] args) {
char[] chs = {'A', 'B', '我', '是', '谁'};
String s = String.valueOf(chs);
System.out.println("s = " + s);
String s1 = String.valueOf(chs, 0, 2);
System.out.println("s1 = " + s1);
Object obj = "你好啊";
String s2 = String.valueOf(obj);
System.out.println("s2 = " + s2);
}
}
1.5.3 使用 “” +
● 任意数据类型和 “字符串” 进行拼接,结果都是字符串。
● 示例
package com.github.string.demo6;
import java.util.ArrayList;
import java.util.List;
/**
* @author maxiaoke.com
* @version 1.0
*/
public class Test {
public static void main(String[] args) {
int num = 123456;
String s = num + "";
System.out.println("s = " + s);
List<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
String str = list + "";
System.out.println(str);
}
}