In this article, we will show you a few StringJoiner examples to join String.

1. StringJoiner
1.1 Join String by a delimiter

StringJoiner sj = new StringJoiner(",");
sj.add("aaa");
sj.add("bbb");
sj.add("ccc");
String result = sj.toString(); //aaa,bbb,ccc
1.2 Join String by a delimiter and starting with a supplied prefix and ending with a supplied suffix.

StringJoiner sj = new StringJoiner("/", "prefix-", "-suffix");
sj.add("2016");
sj.add("02");
sj.add("26");
String result = sj.toString(); //prefix-2016/02/26-suffix

2. String.join
StringJoiner is used internally by static String.join().

2.1 Join String by a delimiter.

//2015-10-31
String result = String.join("-", "2015", "10", "31" );
2.2 Join a List by a delimiter.

List<String> list = Arrays.asList("java", "python", "nodejs", "ruby");
//java, python, nodejs, ruby
String result = String.join(", ", list);

3. Collectors.joining
Two Stream and Collectors.joining examples.

3.1 Join List<String> example.

List<String> list = Arrays.asList("java", "python", "nodejs", "ruby");

//java | python | nodejs | ruby
String result = list.stream().map(x -> x).collect(Collectors.joining(" | "));
3.2 Join List<Object> example.

void test(){

List<Game> list = Arrays.asList(
new Game("Dragon Blaze", 5),
new Game("Angry Bird", 5),
new Game("Candy Crush", 5)
);

//{Dragon Blaze, Angry Bird, Candy Crush}
String result = list.stream().map(x -> x.getName())
.collect(Collectors.joining(", ", "{", "}"));

}

class Game{
String name;
int ranking;

public Game(String name, int ranking) {
this.name = name;
this.ranking = ranking;
}

public String getName() {
return name;
}

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

public int getRanking() {
return ranking;
}

public void setRanking(int ranking) {
this.ranking = ranking;
}
}

Java 8 – StringJoiner example的更多相关文章

  1. Java StringJoiner

    Java StringJoiner Java added a new final class StringJoiner in java.util package. It is used to cons ...

  2. java.lang.String 类源码解读

    String类定义实现了java.io.Serializable, Comparable<String>, CharSequence 三个接口:并且为final修饰. public fin ...

  3. 沉淀再出发:java中的equals()辨析

    沉淀再出发:java中的equals()辨析 一.前言 关于java中的equals,我们可能非常奇怪,在Object中定义了这个函数,其他的很多类中都重载了它,导致了我们对于辨析其中的内涵有了混淆, ...

  4. StringJoiner

    示例一 public class StringJoinerTest1 { public static void main(String[] args) { StringJoiner joiner = ...

  5. java编写的一段简单的网络爬虫demo代码

    功能: 从网站上下载附件,并从页面中提取页面文章内容 关于NIO 在大多数情况下,Java 应用程序并非真的受着 I/O 的束缚.操作系统并非不能快速传送数据,让 Java 有事可做:相反,是 JVM ...

  6. Hibernate 系列 08 - 对象识别机制

    目录导读: Hibernate 系列 学习笔记 目录 本篇目录: 为了区别不同的对象,有两种识别方法: 1. 内存地址识别(“==”号识别) 2. equals()和hashCode()识别 1. 以 ...

  7. Spring-Cloud-Ribbon学习笔记(一):入门

    简介 Spring Cloud Ribbon是一个基于Http和TCP的客户端负载均衡工具,它是基于Netflix Ribbon实现的.它不像服务注册中心.配置中心.API网关那样独立部署,但是它几乎 ...

  8. 利用ShardingSphere-JDBC实现分库分表

    利用ShardingSphere-JDBC实现分库分表 1. ShardingSphere概述 1.1 概述 业务发展到一定程度,分库分表是一种必然的要求,分库可以实现资源隔离,分表则可以降低单表数据 ...

  9. Java8-Stream-No.10

    import java.util.Arrays; import java.util.IntSummaryStatistics; import java.util.List; import java.u ...

随机推荐

  1. Searching for equivalent of FileNotFoundError in Python 2

    I created a class named Options. It works fine but not not with Python 2. And I want it to work on b ...

  2. web.xml关于spring的讲解

    <context-param>的作用: web.xml的配置中<context-param>配置作用 . 启动一个WEB项目的时候,容器(如:Tomcat)会去读它的配置文件w ...

  3. 前台登录和Token信息交互流程

    原来总是对前台登录,怎么利用token有点迷惑,后面仔细的想了一遍,把自己简单的想法记录下来,留作记录,以便后续优化 各路大神有什么看法也可以说,能更完善整个流程. 不说了,暴力的上图: 该图是出自c ...

  4. 解决 office2016 意外的严重错误 不能启动程序

    启动Microsoft Office ClickToRun Service服务

  5. JS:指定FPS帧频,requestAnimationFrame播放动画

    Flash制作动画,最基础的概念就是帧,但在Flash中,帧频的控制比较简单,只需要编译前指定一下目标帧频就可以了. 实际运行时,不需要我们关心定时器的问题,flash player会定时触发Ente ...

  6. java 转义符

      java 转义符 CreationTime--2018年7月12日15点33分 Author:Marydon 1.常见转义符 转义符在java中有特殊含义  转义字符  特殊含义  \b  退格( ...

  7. 【DB2】慎用nickname,可能会引起效率较低

    在使用db2的时候,在A库建立了nickname,指向B库的物理表(数据量800多万),现在使用程序(JDBC)连接数据库,并计算指标,但是发现效率很低. 解决办法: 删除A库中的nickname,在 ...

  8. python3新特点

    #xiaodeng #python 3 #1.编码方式和性能 ''' 1.py3运行效率更快 2.默认源文件编码ASCII变为UTF-8,以前文件前加入的coding=utf-8不再需要 3.针对un ...

  9. jQuery get selected text from SELECT (or DROPDOWN) list box

    Most of the time in JavaScript we want to do following things with Select (or dropdown) list box. – ...

  10. 动态创建radio、checkbox时需要注意的问题

    1.给radio.checkbox后面添加文字 2.创建默认选中 3.创建完可选 function create(){ var board = document.getElementById(&quo ...