Java數組和字符串的相互轉換


字符串轉換為數組
1)Java String 類中的 toCharArray() 方法將字符串轉換為字符數組,具體代碼如下所示。

String str = "123abc";
char[] arr = str.toCharArray();    // char數組
for (int i = 0; i < arr.length; i++) {
    System.out.println(arr[i]);    // 輸出1 2 3 a b c
}

2)Java.lang 包中有 String.split() 方法,Java 中通常用 split() 分割字符串,返回的是一個數組。

String str = "123abc";
String[] arr = str.split("");
for (int i = 0; i < arr.length; i++) { // String數組
    System.out.print(arr[i]); // 輸出 1 2 3 a b c
}

使用 split() 方法注意如下:

如果用“.”或“|”作為分隔的話,必須是如下寫法,String.split("\.") 或 String.split("\|"),這樣才能正確的分隔開,不能用 String.split(".") 或 String.split("|")。
如果在一個字符串中有多個分隔符,可以用“|”作為連字符,如“acount=? and uu =? or n=?”,把三個都分隔出來,可以用 String.split(“and|or”);
如果想在串中使用“”字符,則也需要轉義。首先要表達“aaaa\bbbb”這個串就應該用"aaaa\bbbb”,這樣分隔才能得到正確結果。

3)如果要返回 byte 數組就直接使用 getBytes 方法就可以了。

String str = "123abc" ;
byte [] arr = str.getBytes();

4)使用 StringUtils 中的 join 函數,使用前需先引入 common-lang3 的 jar 包,可去 apache 官網下載,代碼如下所示。

StringUtils.join(null) = null;
StringUtils.join([]) = "";
StringUtils.join([null])= "";
StringUtils.join(["a", "b", "c"]) = "abc";
StringUtils.join([null, "", "a"]) = "a";
String[] str = { "1", "2", "a", "b" };

// 將數組變成字符串

StringUtils.join(str);

// 將數組用逗號分隔變成字符串
StringUtils.join(str, ",");
數組轉換為字符串
1)char 字符數組轉化為字符串,使用 String.copyValueOf(charArray) 函數實現,具體代碼如下所示。

char[] arr = { 'a', 'b', 'c' };
String string = String.copyValueOf(arr);
System.out.println(string); // 輸出abc

2)String 字符串數組轉化為字符串,代碼如下所示。

String[] arr = { "123", "abc" };
StringBuffer sb = new StringBuffer();
for (int i = 0; i < arr.length; i++) {
    sb.append(arr[i]); // String並不擁有append方法,所以借助 StringBuffer
}
String sb1 = sb.toString();
System.out.println(sb1); // 輸出123abc


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM