zl程序教程

您现在的位置是:首页 >  其它

当前栏目

java8 新特性 拼接字符串

字符串 特性 拼接 java8
2023-09-27 14:22:13 时间

一 演示案例

1.1 编写一个对象

package com.ljf.spring.boot.demo.model;

/**
 * @ClassName: Users
 * @Description: TODO
 * @Author: liujianfu
 * @Date: 2021/06/11 19:15:53 
 * @Version: V1.0
 **/
public class Users {
    private String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

1.2  pom文件引入一个拼接字符串工具包

 <!-- 拼接字符串的工具包 -->
    <dependency>
      <groupId>com.google.guava</groupId>
      <artifactId>guava</artifactId>
      <version>18.0</version>
    </dependency>

1.3 造数据

       //封装造数据
        Users u=new Users();
        u.setName("北京");
        Users u2=new Users();
        u2.setName("上海");
        List<Users> datalist=new ArrayList<Users>();
        datalist.add(u);
        datalist.add(u2);

1.4 遍历

1.传统遍历

        //遍历方式1
        StringBuffer sb=new StringBuffer();
        for(Users us:datalist){
            sb.append(us.getName()+",");
        }
        //去除末尾逗号
        String result=sb.toString();
        if(result.endsWith(",")){
            result=result.substring(0,result.length()-1);
        }
        System.out.println("sb:"+result);

2.java8的stream遍历

 //遍历方式二
        String result2="";
        if (datalist!=null && !datalist.isEmpty()){
            //java8的stream api
            Set<String> set=datalist.stream().map(Users::getName).collect(Collectors.toSet());
            result2= Joiner.on(",").join(set);
        }
        System.out.println("sb2:"+result2);

1.5 执行结果