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

java如何把逗號分隔的String字符串轉(zhuǎn)int集合

 更新時(shí)間:2022年06月30日 10:17:03   作者:itdragons  
這篇文章主要介紹了java實(shí)現(xiàn)把逗號分隔的String字符串轉(zhuǎn)int集合,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

把逗號分隔的String字符串轉(zhuǎn)int集合

代碼通過Java 8 Stream實(shí)現(xiàn)起來非常容易!

String ids = "1,2,3,4,5";
List<Integer> idList = Arrays.stream(ids.split(",")).map(Integer::parseInt).collect(Collectors.toList());

集合或數(shù)組轉(zhuǎn)變?yōu)槎禾柗指舻淖址膸追N方式

首先,創(chuàng)建一個集合

List<String> list = Lists.newArrayList(null, "bob", "jack");

1、自己編碼實(shí)現(xiàn)

? ? public static <T> String join(List<T> list, String splitStr) {
? ? ? ? if (CollectionUtils.isEmpty(list))
? ? ? ? ? ? return "";
? ? ? ? if (list.size() == 1)
? ? ? ? ? ? return String.valueOf(list.get(0));
? ? ? ? StringBuilder sb = new StringBuilder();
? ? ? ? boolean isFirst = true;
? ? ? ? for (int i = 0; i < list.size(); i++) {
? ? ? ? ? ? if (!isFirst) sb.append(splitStr);
? ? ? ? ? ? sb.append(String.valueOf(list.get(i)));
? ? ? ? ? ? isFirst = false;
? ? ? ? }
? ? ? ? return sb.toString();
? ? }

? ? public static <T> String join(T[] array, String splitStr) {
? ? ? ? if (ArrayUtils.isEmpty(array))
? ? ? ? ? ? return "";
? ? ? ? if (array.length == 1)
? ? ? ? ? ? return String.valueOf(array[0]);
? ? ? ? StringBuilder sb = new StringBuilder();
? ? ? ? boolean isFirst = true;
? ? ? ? for (int i = 0; i < array.length; i++) {
? ? ? ? ? ? if (!isFirst) sb.append(splitStr);
? ? ? ? ? ? sb.append(String.valueOf(array[i]));
? ? ? ? ? ? isFirst = false;
? ? ? ? }
? ? ? ? return sb.toString();
? ? }

輸出

null,bob,jack

2、org.apache.commons.lang3.StringUtils

System.out.println(StringUtils.join(list.toArray(), ","));

輸出

,bob,jack

3、StringJoiner, JDK1.8+

?? ?StringJoiner sj = new StringJoiner(",");
?? ?list.forEach(e -> sj.add(String.valueOf(e)));
?? ?System.out.println(sj.toString());
?? ?
?? ?// 在連接之前操作字符串, 拼接前綴和后綴
?? ?StringJoiner sj2 = new StringJoiner(",", "START_", "_END");
?? ?list.forEach(e -> sj2.add(String.valueOf(e)));
?? ?System.out.println(sj2.toString());

輸出

null,bob,jack
START_null,bob,jack_END

4、String.join(), JDK1.8+

System.out.println(String.join(",", list));

輸出

null,bob,jack

5、Stream, Collectors.joining(), JDK1.8+

?? ?System.out.println(list.stream().collect(Collectors.joining(",")));
?? ?
?? ?// 在連接之前操作字符串, 拼接前綴和后綴
?? ?String str = list.stream().map(e -> {
?? ? ? if (e != null) return e.toUpperCase();
?? ? ? else return "null";
?? ?}).collect(Collectors.joining(",", "START_", "_END"));
?? ?System.out.println(str);

輸出

null,bob,jack
START_null,BOB,JACK_END

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java?對象深拷貝工具類的實(shí)現(xiàn)

    Java?對象深拷貝工具類的實(shí)現(xiàn)

    本文主要介紹了Java?對象深拷貝工具類的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • 了解java Struts攔截器的相關(guān)操作

    了解java Struts攔截器的相關(guān)操作

    Struts為我們實(shí)現(xiàn)了很多的功能,比如數(shù)據(jù)自動封裝,文件上傳功能阿。Struts為我們提供的這些功能都是通過攔截器完成的。下面我們來詳細(xì)了解一下吧
    2019-06-06
  • java8中新的Date和Time詳解

    java8中新的Date和Time詳解

    這篇文章主要是java8中新的Date和Time,探討新Date類和Time類背后的設(shè)計(jì)原則,有所需要的小伙伴希望能幫助到你
    2016-07-07
  • spring @Component注解原理解析

    spring @Component注解原理解析

    這篇文章主要介紹了spring @Component注解原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • Java獲取Prometheus監(jiān)控?cái)?shù)據(jù)的方法實(shí)現(xiàn)

    Java獲取Prometheus監(jiān)控?cái)?shù)據(jù)的方法實(shí)現(xiàn)

    本文主要介紹了Java獲取Prometheus監(jiān)控?cái)?shù)據(jù)的方法實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-12-12
  • Java中的反射機(jī)制詳解

    Java中的反射機(jī)制詳解

    這篇文章主要介紹了JAVA 反射機(jī)制的相關(guān)知識,文中講解的非常細(xì)致,代碼幫助大家更好的理解學(xué)習(xí),感興趣的朋友可以了解下
    2021-09-09
  • Eclipse 出現(xiàn)Failed to load JavaHL Library解決方法

    Eclipse 出現(xiàn)Failed to load JavaHL Library解決方法

    這篇文章主要介紹了Eclipse 出現(xiàn)Failed to load JavaHL Library解決方法的相關(guān)資料,今天使用Eclipse 時(shí)出現(xiàn)以上錯誤,本文說明如何更更正,需要的朋友可以參考下
    2016-11-11
  • Java實(shí)現(xiàn)基于UDP協(xié)議的網(wǎng)絡(luò)通信UDP編程

    Java實(shí)現(xiàn)基于UDP協(xié)議的網(wǎng)絡(luò)通信UDP編程

    在Java中使用UDP編程,仍然需要使用Socket,因?yàn)閼?yīng)用程序在使用UDP時(shí)必須指定網(wǎng)絡(luò)接口(IP地址)和端口號。注意:UDP端口和TCP端口雖然都使用0~65535,但他們是兩套獨(dú)立的端口,即一個應(yīng)用程序用TCP占用了端口1234,不影響另一個應(yīng)用程序用UDP占用端口1234
    2023-04-04
  • MybatisPlus3.3.0沒有MybatisPlusInterceptor類問題的解決方法

    MybatisPlus3.3.0沒有MybatisPlusInterceptor類問題的解決方法

    項(xiàng)目使用的是mybatis-plus-extension3.3.0依賴,然后在我使用分頁插件的時(shí)候,發(fā)現(xiàn)無法導(dǎo)入MybatisPlusInterceptor類所以本文給大家介紹了MybatisPlus3.3.0沒有MybatisPlusInterceptor類問題的解決方法,需要的朋友可以參考下
    2023-12-12
  • Java實(shí)現(xiàn)簡單碰撞檢測

    Java實(shí)現(xiàn)簡單碰撞檢測

    這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)簡單碰撞檢測,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-06-06

最新評論