Java StringJoiner

Java added a new final class StringJoiner in java.util package. It is used to construct a sequence of characters separated by a delimiter. Now, you can create string by passing delimiters like comma(,), hyphen(-) etc. You can also pass prefix and suffix to the char sequence.

import java.util.StringJoiner;

public class StringJoinerExample {
public static void main(String[] args) {
// passing comma(,) as delimiter
StringJoiner joinNames = new StringJoiner(",");
// Adding values to StringJoiner
joinNames.add("Rahul");
joinNames.add("Raju");
joinNames.add("Peter");
joinNames.add("Raheem");
System.out.println(joinNames); // passing comma(,) and square-brackets as delimiter
StringJoiner joinNames2 = new StringJoiner(",", "[", "]");
// Adding values to StringJoiner
joinNames2.add("Rahul");
joinNames2.add("Raju");
joinNames2.add("Peter");
joinNames2.add("Raheem");
System.out.println(joinNames2); StringJoiner joinNames3 = new StringJoiner(",", "[", "]");
joinNames3.add("Rahul");
joinNames3.add("Raju"); StringJoiner joinNames4 = new StringJoiner(":", "[", "]");
joinNames4.add("Peter");
joinNames4.add("Raheem"); // Merging two StringJoiner
StringJoiner merge = joinNames3.merge(joinNames4);
System.out.println(merge);
}
}

点击查看结果

```
Rahul,Raju,Peter,Raheem
[Rahul,Raju,Peter,Raheem]
[Rahul,Raju,Peter:Raheem]
```
import java.util.StringJoiner;

public class StringJoinerMethodExample {
public static void main(String[] args) {
StringJoiner joinNames = new StringJoiner(","); // Prints nothing because it is empty
System.out.println(joinNames); // We can set default empty value.
joinNames.setEmptyValue("It is empty");
System.out.println(joinNames); // Adding values to StringJoiner
joinNames.add("Rahul");
joinNames.add("Raju");
System.out.println(joinNames); // Returns length of StringJoiner
int length = joinNames.length();
System.out.println("Length: " + length); // Returns StringJoiner as String type
String str = joinNames.toString();
System.out.println(str); // Now, we can apply String methods on it
char ch = str.charAt(3);
System.out.println("Character at index 3: " + ch); // Adding one more element
joinNames.add("Sorabh");
System.out.println(joinNames); // Returns length
int newLength = joinNames.length();
System.out.println("New Length: " + newLength);
}
}

点击查看结果

```

It is empty

Rahul,Raju

Length: 10

Rahul,Raju

Character at index 3: u

Rahul,Raju,Sorabh

New Length: 17

</div>

**参考资料**
* [https://www.javatpoint.com/java-stringjoiner](https://www.javatpoint.com/java-stringjoiner)

Java StringJoiner的更多相关文章

  1. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  2. Java 8 – StringJoiner example

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

  3. Java 8中字符串拼接新姿势:StringJoiner

    介绍 StringJoiner是java.util包中的一个类,用于构造一个由分隔符分隔的字符序列(可选),并且可以从提供的前缀开始并以提供的后缀结尾.虽然这也可以在StringBuilder类的帮助 ...

  4. 20145212 《Java程序设计》第8周学习总结

    20145212 <Java程序设计>第8周学习总结 教材学习内容总结 第十四章 NIO与NIO2 认识NIO NIO使用频道(Channel)来衔接数据节点,在处理数据时,NIO可以让你 ...

  5. 20145206邹京儒《Java程序设计》第8周学习总结

    20145206 <Java程序设计>第8周学习总结 教材学习内容总结 第十四章 NIO与NIO2 14.1 认识NIO NIO使用频道(Channel)来衔接数据节点,在处理数据时,NI ...

  6. 20145308刘昊阳 《Java程序设计》第8周学习总结

    20145308刘昊阳 <Java程序设计>第8周学习总结 教材学习内容总结 第15章 通用API 15.1 日志 15.1.1 日志API简介 java.util.loggging包提供 ...

  7. 20145334赵文豪 《Java程序设计》第8周学习总结

    20145334赵文豪 <Java程序设计>第8周学习总结 教材学习内容总结 转眼间Java学习已经到了第八周,第十五章,需要我们学会使用日志API.了解国际化基础.认识JDK8增强功能等 ...

  8. 20145225《Java程序设计》 第8周学习总结

    20145225<Java程序设计> 第八周学习总结 教材学习内容总结 第十五章 通用API 15.1日志 日志API:使用日志的起点是Logger类,要取得Logger类,必须使用Log ...

  9. 20145222黄亚奇《Java程序设计》第8周学习总结

    教材学习内容总结 第15章 通用API 1 日志 1 日志API简介 java.util.loggging包提供了日志功能相关类与接口. 使用日志的起点是Logger类,Logger类的构造函数表示为 ...

随机推荐

  1. [DeeplearningAI笔记]卷积神经网络4.1-4.5 人脸识别/one-shot learning/Siamase网络/Triplet损失/将面部识别转化为二分类问题

    4.4特殊应用:人脸识别和神经网络风格转换 觉得有用的话,欢迎一起讨论相互学习~Follow Me 4.1什么是人脸识别 Face verification人脸验证 VS face recogniti ...

  2. Restful 接口传递参数

    首先补充一下什么是 Restful ,这里简单说一下,如果一个架构符合REST原则,就称它为RESTful架构. RESTful架构特点: (1)每一个URI代表一种资源: (2)客户端和服务器之间, ...

  3. checkbox选择根据后台List数据进行回显

    需求:记住用户已经选择的 checkbox 选项,当用户再次对该 checkbox 进行选择操作时,应对该用户已经选择的 checkbox 选项进行选中操作. 示例代码: checkbox,js遍历后 ...

  4. NOIP 2014 提高组 Day1

    期望得分:100+100+50=250 实际得分:100+100+50=250 此次NOIP  ZJ省一分数线:500,SD:345 https://www.luogu.org/problem/lis ...

  5. AJAX流程

    创建一个XHR对象 var xmlhttp; if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari ...

  6. 使用HttpClient4来构建Spring RestTemplate

    Spring RestTemplate简单说明 现在REST服务已经很普及了,在我们的程序中,经常会需要调用REST API,这时候会有很多选择,原始一点的JDK自带的,再进一步点使用HttpClie ...

  7. GridControl详解(五)设置行备注和行号

    备注显示设置 设置备注字段 显示结果: 可以写入按键事件F3,用以开关备注显示 private void Form4_KeyUp(object sender, KeyEventArgs e) { if ...

  8. Redhat 7 之 Mariadb(mysql)

    Redhat7 之后mysql 改为Mariadba,由于mysql 被卖给了IBM, 有闭源的风险. 所以就另外开了一个新的分支,继续开源.Maria 来源于mysql开发者的女儿的名字. 1. 安 ...

  9. /i,/m,/s,/x,/A,/s,/U,/x,/j,/u 等正则修饰符用法~

    i (PCRE_CASELESS) 如果设置了这个修饰符,模式中的字母会进行大小写不敏感匹配. m (PCRE_MULTILINE) 默认情况下,PCRE 认为目标字符串是由单行字符组成的(然而实际上 ...

  10. Elasticsearch5.0 安装问题集锦【转】

    转自 Elasticsearch5.0 安装问题集锦 - 代码&优雅着&生活 - 博客园http://www.cnblogs.com/sloveling/p/elasticsearch ...