欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java逗號分隔String字符串及數(shù)組、集合相互轉(zhuǎn)換

 更新時間:2024年02月17日 10:12:51   作者:菜鳥筆記本  
我們在日常開發(fā)時會經(jīng)常遇到將一個字符串按照逗號進行分割,這篇文章主要給大家介紹了關于java逗號分隔String字符串及數(shù)組、集合相互轉(zhuǎn)換的相關資料,文中給出了詳細的代碼示例,需要的朋友可以參考下

1. 準備一個逗號分割字符串

String str = "小張,小王,小李,小趙";

2. 逗號分割字符串轉(zhuǎn)換為集合(轉(zhuǎn)換為集合之前會先轉(zhuǎn)換為數(shù)組)

// 第一種:先用split將字符串按逗號分割為數(shù)組,再用Arrays.asList將數(shù)組轉(zhuǎn)換為集合
List<String> strList1 = Arrays.asList(str.split(","));
// 第二種:使用stream轉(zhuǎn)換String集合
List<String> strList2 = Arrays.stream(str.split(",")).collect(Collectors.toList());
// 第三種:使用stream轉(zhuǎn)換int集合(這種適用字符串是逗號分隔的類型為int類型)
List<Integer> intList = Arrays.stream(str.split(",")).map(Integer::parseInt).collect(Collectors.toList());
// 第四種:使用Guava的SplitterString
List<String> strList3= Splitter.on(",").trimResults().splitToList(str);
// 第五種:使用Apache Commons的StringUtils(只用到了他的split)
List<String> strList4= Arrays.asList(StringUtils.split(str,","));
// 第六種:使用Spring Framework的StringUtils
List<String> strList5 =Arrays.asList(StringUtils.commaDelimitedListToStringArray(str));

3. 集合轉(zhuǎn)換為逗號分隔的字符串

// 第一種:String.join(), JDK1.8+
str = String.join(",", strList1);
// 第二種:org.apache.commons.lang3.StringUtils. toArray():集合轉(zhuǎn)換為數(shù)組
str = StringUtils.join(strList1.toArray(), ",");
// 第三種:需要引入hutool工具包
str = Joiner.on(",").join(strList1);
// 第四種:StringJoiner, JDK1.8+ 輸出示例:START_小張,小王,小李,小趙_END
StringJoiner sj = new StringJoiner(",");
strList1.forEach(e -> sj.add(String.valueOf(e)));
// 在上面已經(jīng)處理為逗號拼接的字符串,下面為補充
// 在連接之前操作字符串, 拼接前綴和后綴
StringJoiner sj2 = new StringJoiner(",", "START_", "_END");
strList1.forEach(e -> sj2.add(String.valueOf(e)));
// 第五種:Stream, Collectors.joining(), JDK1.8+
str = strList1.stream().collect(Collectors.joining(","));
// 在連接之前操作字符串, 拼接前綴和后綴. 輸出示例:START_小張,小王,小李,小趙_END
str = strList1.stream().map(e -> {
    if (e != null) return e.toUpperCase();
    else return "null";
}).collect(Collectors.joining(",", "START_", "_END"));
// 第六種:使用Spring Framework的StringUtils
str = StringUtils.collectionToDelimitedString(strList1,",");

4. 數(shù)組轉(zhuǎn)逗號分隔字符串

String [] arr = (String[])strList1.toArray();
// 第一種:使用StringUtils的join方法
str = StringUtils.join(arr, ",");
// 第二種:使用ArrayUtils的toString方法,這種方式轉(zhuǎn)換的字符串首尾加大括號 輸出示例:{小張,小王,小李,小趙}
ArrayUtils.toString(arr, ",");

補充:將一個Java字符串按逗號分割成一個列表(List)

可以使用Java的split()方法將字符串分割成字符串數(shù)組,然后將數(shù)組轉(zhuǎn)換為列表。以下是一個示例代碼:

import java.util.Arrays;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        String str = "apple,banana,orange";
        List<String> list = Arrays.asList(str.split(","));
        System.out.println(list);
    }
}

輸出

[apple, banana, orange]

在上述代碼中,我們使用split(",")方法將字符串str按逗號分割成一個字符串數(shù)組,然后使用Arrays.asList()方法將數(shù)組轉(zhuǎn)換為列表。最后,我們打印輸出列表的內(nèi)容。
請注意,Arrays.asList()方法返回的是一個固定大小的列表,不支持對其進行添加或刪除操作。如果需要進行修改操作,可以將其轉(zhuǎn)換為ArrayList,如下所示:

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        String str = "apple,banana,orange";
        List<String> list = new ArrayList<>(Arrays.asList(str.split(",")));
        System.out.println(list);
    }
}

總結 

到此這篇關于java逗號分隔String字符串及數(shù)組、集合相互轉(zhuǎn)換的文章就介紹到這了,更多相關java逗號分隔String字符串內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 完美解決java.lang.OutOfMemoryError處理錯誤的問題

    完美解決java.lang.OutOfMemoryError處理錯誤的問題

    下面小編就為大家?guī)硪黄昝澜鉀Qjava.lang.OutOfMemoryError處理錯誤的問題。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • JavaSE異常Exception處理方法以及自定義

    JavaSE異常Exception處理方法以及自定義

    網(wǎng)絡異常exception是指在網(wǎng)絡通信過程中出現(xiàn)的異常情況,這些異??赡苁怯捎诰W(wǎng)絡連接不穩(wěn)定、網(wǎng)絡故障、服務器故障、網(wǎng)絡擁堵等原因?qū)е碌?這篇文章主要給大家介紹了關于JavaSE異常Exception處理方法以及自定義的相關資料,需要的朋友可以參考下
    2024-07-07
  • Java中基于推、拉模式的sentinel規(guī)則持久化詳解

    Java中基于推、拉模式的sentinel規(guī)則持久化詳解

    這篇文章主要介紹了Java中基于推、拉模式的sentinel規(guī)則持久化詳解,推模式是sentinelDashboard?把規(guī)則推給Nacos,Nacos監(jiān)聽規(guī)則的變化推給微服務,拉模式是sentinelDashboard?把規(guī)則直接給微服務,?Nacos定時的同步微服務端的規(guī)則,需要的朋友可以參考下
    2023-09-09
  • Java常見的鎖策略圖文詳解(附實例代碼)

    Java常見的鎖策略圖文詳解(附實例代碼)

    Java中的鎖方法是指通過特定的機制來確保多線程環(huán)境下對共享資源的互斥訪問,以避免數(shù)據(jù)不一致和競態(tài)條件,這篇文章主要介紹了Java常見鎖策略的相關資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-10-10
  • Jenkins遠程部署war包過程圖解

    Jenkins遠程部署war包過程圖解

    這篇文章主要介紹了Jenkins遠程部署war包過程圖解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-05-05
  • springboot如何獲取登錄用戶的個人信息

    springboot如何獲取登錄用戶的個人信息

    在Spring Boot中,獲取登錄用戶的個人信息通常需要使用Spring Security框架來進行身份認證和授權,這篇文章主要介紹了springboot獲取登錄用戶的個人信息,需要的朋友可以參考下
    2023-05-05
  • 用Rational Rose逆向工程(java)生成類圖(教程和錯誤解決)

    用Rational Rose逆向工程(java)生成類圖(教程和錯誤解決)

    Rational Rose有個很方便的功能,將項目中的JAVA代碼自動轉(zhuǎn)換成UML類圖
    2013-02-02
  • java實現(xiàn)入棧push和出棧pop過程

    java實現(xiàn)入棧push和出棧pop過程

    文章詳細介紹了棧的概念、特點以及如何使用數(shù)組和鏈表實現(xiàn)棧,通過入棧(push)和出棧(pop)操作,展示了棧的數(shù)據(jù)處理過程,并提供了具體的代碼實現(xiàn)
    2024-12-12
  • 史上最通俗理解的Java死鎖代碼演示

    史上最通俗理解的Java死鎖代碼演示

    這篇文章主要給大家介紹了關于Java死鎖代碼演示的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09
  • Java三種求水仙花數(shù)的方法

    Java三種求水仙花數(shù)的方法

    本篇文章通過求水仙花數(shù)的實例來讓大家對JAVA求數(shù)的概念和方法有更深入的理解和應用,學習參考下吧。
    2018-02-02

最新評論