一、使用split()方法進行分割
在將一個字元串轉換為ArrayList時,我們可以使用String類的split()方法對該字元串進行分割,然後將分割後的各個子字元串逐個添加到ArrayList中。對於小規模的字元串轉換,這種方法可以達到較高的效率。
String str = "a,b,c,d"; String[] strArr = str.split(","); ArrayList<String> list = new ArrayList<>(); for(String s : strArr) { list.add(s); }
使用上述代碼可以將字元串”a,b,c,d”轉換為ArrayList,其中用逗號”,”對字元串進行分割。
二、使用正則表達式進行分割
在split()方法中,也可以使用正則表達式對字元串進行更複雜的分割。但是,由於正則表達式的執行效率較低,當字元串較龐大時,採用正則表達式進行分割的效率會大大降低。
String str = "1,2,3;a,b,c;d,e,f"; String[] strArr = str.split(";|,"); ArrayList<String> list = new ArrayList<>(); for(String s : strArr) { list.add(s); }
使用上述代碼可以將字元串”1,2,3;a,b,c;d,e,f”按分號”;”和逗號”,”進行分割,然後將分割後的各個子字元串逐個添加到ArrayList中。
三、使用StringTokenizer進行分割
在對字元串進行分割時,除了split()方法外,還可以使用StringTokenizer類進行分割。相較於split()方法,StringTokenizer採用了更原始的操作方式,因而效率更高。
String str = "apple,orange,banana"; StringTokenizer st = new StringTokenizer(str, ","); ArrayList<String> list = new ArrayList<>(); while (st.hasMoreTokens()) { list.add(st.nextToken()); }
使用上述代碼可以將字元串”apple,orange,banana”按逗號”,”進行分割,然後將分割後的各個子字元串逐個添加到ArrayList中。
四、使用Stream進行快速轉換
Java 8引入了Stream API,我們可以使用Stream對字元串進行分割,並將分割後的字元串快速轉換為ArrayList。
String str = "1,2,3,4,5"; List<String> list = Arrays.stream(str.split(",")).collect(Collectors.toList());
使用上述代碼可以將字元串”1,2,3,4,5″按逗號”,”進行分割,並將分割後的各個子字元串轉換為List。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/289381.html