Java 8 – StringJoiner example
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的更多相关文章
- Java StringJoiner
Java StringJoiner Java added a new final class StringJoiner in java.util package. It is used to cons ...
- java.lang.String 类源码解读
String类定义实现了java.io.Serializable, Comparable<String>, CharSequence 三个接口:并且为final修饰. public fin ...
- 沉淀再出发:java中的equals()辨析
沉淀再出发:java中的equals()辨析 一.前言 关于java中的equals,我们可能非常奇怪,在Object中定义了这个函数,其他的很多类中都重载了它,导致了我们对于辨析其中的内涵有了混淆, ...
- StringJoiner
示例一 public class StringJoinerTest1 { public static void main(String[] args) { StringJoiner joiner = ...
- java编写的一段简单的网络爬虫demo代码
功能: 从网站上下载附件,并从页面中提取页面文章内容 关于NIO 在大多数情况下,Java 应用程序并非真的受着 I/O 的束缚.操作系统并非不能快速传送数据,让 Java 有事可做:相反,是 JVM ...
- Hibernate 系列 08 - 对象识别机制
目录导读: Hibernate 系列 学习笔记 目录 本篇目录: 为了区别不同的对象,有两种识别方法: 1. 内存地址识别(“==”号识别) 2. equals()和hashCode()识别 1. 以 ...
- Spring-Cloud-Ribbon学习笔记(一):入门
简介 Spring Cloud Ribbon是一个基于Http和TCP的客户端负载均衡工具,它是基于Netflix Ribbon实现的.它不像服务注册中心.配置中心.API网关那样独立部署,但是它几乎 ...
- 利用ShardingSphere-JDBC实现分库分表
利用ShardingSphere-JDBC实现分库分表 1. ShardingSphere概述 1.1 概述 业务发展到一定程度,分库分表是一种必然的要求,分库可以实现资源隔离,分表则可以降低单表数据 ...
- Java8-Stream-No.10
import java.util.Arrays; import java.util.IntSummaryStatistics; import java.util.List; import java.u ...
随机推荐
- Linux(CentOS)中使用Mono+jexus部署Asp.net4.5网站
一.效果: 二.安装步骤: 1.安装系统CentOS,我这是用CentOs7测试的. 2.接下来安装libgdiplus.Mono.Jexus有问题可以参考安装工具的官网: Libgdiplus下载官 ...
- vba 列转行
Sub C2R() Dim RCount As Integer RCount = 2 Dim FillIn, FillIn2 Set FillIn = Worksheets("Fill-in ...
- [转]一个简洁的 systemd 操作指南
1.服务权限systemd有系统和用户区分:系统(/user/lib/systemd/system/).用户(/etc/lib/systemd/user/). 一般系统管理员手工创建的单元文件建议存放 ...
- Linux下通用打印系统CUPS使用教程
昨天研究了一下关于在Linux下实现打印操作的相关内容,整理记录如下: 1.什么是CUPS CUPS(Common UNIX Printing System,即通用Unix打印系统)是FedoraCo ...
- openerp 7.0邮件接收中文附件乱码问题解决办法
openerp 7.0邮件接收中文附件乱码问题解决办法: 修改文件\addons\mail\mail_thread.py #1064 line插入代码: h=email.Header.Header(n ...
- Oracle Data Integrator 12c-模型(Model)和 数据存储(DataStore)
一.概念 Model模型: 描述关系型数据的模型. 是一组存放在特定的技术(如Oracle)的数据存储的集合.例如当技术为Oracle时,对应于数据库的Scheme DataStore: 数据存储 一 ...
- 十大经典排序算法-JS篇
http://web.jobbole.com/87968/ 虽然是JS篇,但其他编程语言(例如java)实现起来是差不多的.
- OPML文件
# -*- coding: cp936 -*-#python 27#xiaodeng#OPML文件 #大纲处理标记语言其实建立在颗脱战标记语言之上的标记语言#也叫文件扩展名#是建立在XML之上的一种文 ...
- LevelDB和ForestDB简单性能测试(含代码)
测试环境简单说明 Windows下测试 硬件环境如下: 处理器:Intel(R) Core(TM) i5-4460 CPU @ 3.20GHz 内 存:8GB 硬 盘:希捷 ST1000DM003 操 ...
- Oracle下载汇聚
官方下载oracl软件需要,注册oracle账户.方可下载.... Oracle11.2.0.4 Oracle11.2.0.4 for linux 1-7 http://pan.baidu.com/ ...