java 将String字符串转换为List<Long>类型

在一些应用场景当中,我们可能会遇到以下的场景,我们要使用的类型是List类型,但是接收到的参数是Stirng类型如1,2,3,4等这样的形式
那么我们可以通过采用以下的代码完成以上需求的转换

    private static Log log = LogFactory.getLog(Demo.class);

    @Test
    public void test() {
        String ids = "1, 3, 5, 7, 9";
        // 首先去除空格
        String idsWithNoBlank = ids.replaceAll(" +", "");
        // 其次使用分隔符将代码字符分开
        String[] idsNoBlankArray = idsWithNoBlank.split(",");
        // 使用 org.apache.commons.beanutils 提供的工具类进行类型转换
        // gradle 引入:compile group: 'commons-beanutils', name: 'commons-beanutils', version: '1.9.3'
        Long[] convert = (Long[]) ConvertUtils.convert(idsNoBlankArray, Long.class);
        // 然后转换成为 list
        List<Long> idsLong = Arrays.asList(convert);
        log.error(idsWithNoBlank);
        for (Long m : idsLong) {
            log.info(m);
        }
    
posted @ 2020-03-11 13:43  Mica_Dai  阅读(10662)  评论(0编辑  收藏  举报