java如何把逗号分隔的String字符串转int集合

 更新时间:2022年06月30日 10:17:03   作者:itdragons  
这篇文章主要介绍了java实现把逗号分隔的String字符串转int集合,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

把逗号分隔的String字符串转int集合

代码通过Java 8 Stream实现起来非常容易!

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

集合或数组转变为逗号分隔的字符串的几种方式

首先,创建一个集合

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

1、自己编码实现

    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

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 在Java中按值调用和按引用调用

    在Java中按值调用和按引用调用

    这篇文章主要介绍了Java中的按值调用和按引用调用,一种是按值调用,另一种是按引用调用,这两种方式通常根据作为输入或参数传递给它们的值的类型来区分,下文相关的更多详细资料感兴趣的小伙伴可以参考一下
    2022-04-04
  • Spring中@Cacheable注解的使用详解

    Spring中@Cacheable注解的使用详解

    这篇文章主要介绍了Spring中@Cacheable注解的使用详解,Spring框架提供了@Cacheable注解来轻松地将方法结果缓存起来,以便在后续调用中快速访问,本文将详细介绍@Cacheable注解的使用方法,并从源码级别解析其实现原理,需要的朋友可以参考下
    2023-11-11
  • 浅谈Tomcat三种运行模式

    浅谈Tomcat三种运行模式

    这篇文章主要介绍了浅谈Tomcat三种运行模式,小编冒昧将两篇文章略微整合了一下,有不足的地方,欢迎指出。需要的朋友可以参考。
    2017-10-10
  • Java Swing的层次结构深入理解

    Java Swing的层次结构深入理解

    这篇文章主要介绍了Java Swing的层次结构深入理解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • Spring成员对象注入的三种方式详解

    Spring成员对象注入的三种方式详解

    这篇文章主要为大家详细介绍了Spring成员对象注入的三种方式,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-02-02
  • Spring Boot中的JdbcClient与JdbcTemplate使用对比分析

    Spring Boot中的JdbcClient与JdbcTemplate使用对比分析

    这篇文章主要介绍了Spring Boot中的JdbcClient与JdbcTemplate使用对比分析,一起看看Spring Boot 中 JdbcClient 和 JdbcTemplate 之间的差异
    2024-01-01
  • SpringBoot集成Shiro进行权限控制和管理的示例

    SpringBoot集成Shiro进行权限控制和管理的示例

    这篇文章主要介绍了SpringBoot集成Shiro进行权限控制和管理的示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • Java编程访问权限的控制代码详解

    Java编程访问权限的控制代码详解

    这篇文章主要介绍了Java编程访问权限的控制代码详解,涉及包名,公共的和私有的等相关内容,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • 快速掌握Java中注解与反射

    快速掌握Java中注解与反射

    本文详细介绍了Java中注解和反射的概念及应用,注解是用于给代码添加元数据的标记,如@Override、@Deprecated等,反射机制则是在运行时获取和操作类的内部信息,提高了代码的灵活度,感兴趣的朋友跟随小编一起看看吧
    2023-06-06
  • dubbo整合springboot新手入门教程详解

    dubbo整合springboot新手入门教程详解

    这篇文章主要介绍了dubbo整合springboot新手入门详解,当一台计算机的程序需要调用另一台计算机代码的时候,就涉及远程调用。此时dubbo就粉末登场了,需要的朋友可以参考下
    2019-07-07

最新评论