String與char[]和byte[]
建構子
1
2
3
4
5
6
| new String(char[]);
// 指定開始位置與要拷貝的長度
new String(char[], int start, int len);
new String(byte[]);
// 指定開始位置與要拷貝的長度
new String(byte[], int start, int len);
|
字元陣列轉字串
1
2
3
4
| // 字元陣列轉字串
char[] charArr = {'A', 'B', 'C'};
String str2 = new String(charArr);
System.out.println(str2);
|
1
2
3
4
| char[] charArr = {'A', 'B', 'C'};
// 指定開始位置與要拷貝的長度
String str3 = new String(charArr, 1, 2);
System.out.println(str3);
|
字串轉字元陣列
1
2
3
4
5
6
| String s1 = "ABCDE";
// 字串轉字元陣列
char[] charArr2 = s1.toCharArray();
for (char c : charArr2) {
System.out.println(c);
}
|
Byte陣列轉字串
建構子
1
2
3
4
| // 建構子是byte[]
public String (byte[] bytes)
// 從陣列位置offset開始,第2參數是拷貝幾個byte
public String (byte[] bytes, int offset, int length)
|
1
2
3
4
5
| // byte陣列
byte[] b = {'A', 'B', 'C'};
// 轉字串
String s2 = new String(b);
System.out.println(s2);
|
從陣列位置1開始,拷貝2個byte
1
2
3
4
5
| // byte陣列
byte[] b = {'A', 'B', 'C'};
// 轉字串
String s3 = new String(b, 1, 2);
System.out.println(s3);
|
字串轉Byte陣列
語法
1
2
3
| public byte[] getBytes ()
// 參數可以是字元編碼
public byte[] getBytes (String charsetName)
|
1
2
3
4
5
6
7
8
9
10
| // byte陣列
byte[] b = {'A', 'B', 'C'};
// 轉字串
String s2 = new String(b);
// 字串轉成byte陣列
byte[] b2 = s2.getBytes();
System.out.println("print byte");
for (byte b1 : b2) {
System.out.println(b1);
}
|