Java终于可以加入字符串

我确定您处于想要连接多个字符串的情况。 如果您使用的不是Java编程语言,则可能使用了该编程语言提供的join()函数。 如果您使用Java,则无法执行此操作。 没有join()方法。 Java标准类库为您提供了用于构建GUI应用程序,访问数据库,通过网络发送内容,进行XML转换或调用远程方法的工具。 没有包括连接字符串集合的简单方法。 为此,您需要使用各种第三方库之一 。

幸运的是,这一次结束了! 在Java 8中,我们终于可以加入Strings了!

Java 8添加了一个名为StringJoiner的新类。 顾名思义,我们可以使用此类来连接字符串:

StringJoiner joiner = new StringJoiner(",");
joiner.add("foo");
joiner.add("bar");
joiner.add("baz");
String joined = joiner.toString(); // "foo,bar,baz"// add() calls can be chained
joined = new StringJoiner("-").add("foo").add("bar").add("baz").toString(); // "foo-bar-baz"

StringJoiner由String的两个新的static join()方法在内部使用:

// join(CharSequence delimiter, CharSequence... elements)
String joined = String.join("/", "2014", "10", "28" ); // "2014/10/28"// join(CharSequence delimiter, Iterable<? extends CharSequence> elements)
List<String> list = Arrays.asList("foo", "bar", "baz");
joined = String.join(";", list); // "foo;bar;baz"

新的Stream API还可以使用加入的收集器 :

List<Person> list = Arrays.asList(new Person("John", "Smith"),new Person("Anna", "Martinez"),new Person("Paul", "Watson ")
);String joinedFirstNames = list.stream().map(Person::getFirstName).collect(Collectors.joining(", ")); // "John, Anna, Paul"

因此,我们不再需要第三方库来连接字符串!

翻译自: https://www.javacodegeeks.com/2014/03/java-can-finally-join-strings.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/364376.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python操作Redis(转)

原文1&#xff1a;https://cloud.tencent.com/developer/article/1151834 原文2&#xff1a;https://www.cnblogs.com/zhaohuhu/p/9140673.html转载于:https://www.cnblogs.com/olivertian/p/10982658.html

01:saltstack 基本使用

目录&#xff1a;zabbix其他篇 01&#xff1a;saltstack 基本使用 02&#xff1a;saltstack-api使用详解 目录&#xff1a; 1.1 准备实验环境: 安装系统1.2 克隆一台虚拟机完成使用环境1.3 saltstack介绍1.4 saltstack安装 1.5 saltstack常用模块 1.6 salt ssh详解 1.7 Salt Gr…

display详细说明

display&#xff1a;block,inline,inline-block区别 display:block就是将元素显示为块级元素. block元素的特点是&#xff1a;  总是在新行上开始&#xff1b;  高度&#xff0c;行高以及顶和底边距都可控制&#xff1b;  宽度缺省是它的容器的100%&#xff0c;除非设定…

Java与JavaScript的通信

1&#xff0e; 聊天演示程序内在的想法&#xff0c;连同这篇文章一起都是我自己的。我所见过的所有聊天程序不是完全基于JAVA就是HTML。我的方法是这两种方法的一个很好的平衡。 2&#xff0e; 我通过在Netscape开发者站点阅读大量的文章后收集了在JAVA和JAVASCRIPT间通信的技…

matlab批量修改txt内容_MATLAB作图实例:18:为饼图添加文本标签和百分比

创建饼图时&#xff0c;MATLAB会用切片所代表的整个饼图的百分比来标记每个饼图切片。您可以更改标签以显示不同的文本。简单文字标签用简单的文本标签创建一个饼图。x [1,2,3];pie(x,{Item A,Item B,Item C})带有百分比和文本的标签创建带有包含自定义文本和每个切片的预先计…

泽西岛/贾克斯RS:流式JSON

大约一年前&#xff0c;我写了一篇博客文章&#xff0c;展示了如何使用Jersey / Jax RS流式传输HTTP响应 &#xff0c;最近我想做同样的事情&#xff0c;但是这次使用JSON。 一种常见的模式是获取我们的Java对象并获​​取该对象的JSON字符串表示形式&#xff0c;但这并不是最…

计算机在盲童音乐教学中的具体应用,计算机在高校中的具体应用

计算机在高校中的具体应用随着信息时代的到来,计算机已经成为了高校中不可缺少的重要资源,因此,在计算机日益普及的今天,对于如何利用计算机来提高教学效果,丰富(本文共3页)阅读全文>>随着计算机网络技术和信息技术的不断发展,人们对信息与知识的需求与日俱...(本文共2页…

python selenium 判断元素是否可见

#在元素定位二次封装的基础上&#xff0c;封装判断元素是否可见&#xff0c;找到元素时返回True&#xff0c;找不到元素的时候抛出异常&#xff0c;返回Falsedef isElementPresent(self,locate_type,value): try: self.findElement(locate_type,value) return T…

获取cxgrid footer内容

cxGridDBTableView1.DataController.Summary.FooterSummaryValues[4];转载于:https://www.cnblogs.com/Thenext/p/10235711.html

国外免费全文网站

国外免费全文网站  1.The NASA Astrophysics Data System -- 世界最大免费全文网站&#xff0c;超过300,000篇全文 主要学科&#xff1a;天体物理学 2.HighWire Press -- 世界第二大免费全文网站&#xff0c;超过235&#xff0c;812篇全文 主要学科&#xff1a;生物学、…

python 怎么算l2范数_数学推导+纯Python实现机器学习算法13:Lasso回归

版权说明&#xff1a;本公号转载文章旨在学习交流&#xff0c;不用于任何商业用途&#xff0c;版权归原作者所有&#xff0c;如有异议&#xff0c;敬请后台联络我们&#xff0c;议定合作或删除&#xff0c;我们将第一时间按版权法规定妥善处理&#xff0c;非常感谢&#xff01;…

山东理工大学计算机学院学号,计算机组成原理课程设计--山东理工大学计算机学院...

《计算机组成原理课程设计--山东理工大学计算机学院》由会员分享&#xff0c;可在线阅读&#xff0c;更多相关《计算机组成原理课程设计--山东理工大学计算机学院(14页珍藏版)》请在人人文库网上搜索。1、山东理工大学计算机学院课 程 设 计计算机组成原理班 级 姓 名 学 号 指…

Java 8快多少?

Java SE 8已于昨天发布 。 传统上&#xff0c;每个新的主要JRE版本都提供免费的性能提升。 我们还能再得到免费的午餐吗&#xff1f; 这次收益有多大&#xff1f; 让我们对其进行基准测试。 基准方法 使用3个不同的JRE版本&#xff08;SunJDK 1.6.0_26 &#xff0c;OpenJDK 1…

Win10 OpenCV3.3.0+VS2013配置大坑,OpenCV解决方案编译报错“找不到python36_d.lib”错误...

今天因为想要用OpenCV做图像识别&#xff0c;小白一个&#xff0c;在网上找到一个教程&#xff0c;但是需要配置OpenCV3.3.0的环境&#xff0c;于是又在网上找OpenCV3.3.0VS2013&#xff08;因为我之前已经安过了VS2013&#xff09;&#xff0c;前面的都顺利执行&#xff0c;但…

正在编写推箱子游戏的自动求解程序

网上搜索了一下&#xff0c;有好多人现成的产品&#xff0c;不少国产的。编写这个程序只是为了回忆一下算法。不能丢了。 自动求解有俩种方案&#xff1a;一个是求最小行走步骤&#xff0c;一个是求最小推箱子数目。 第一种算法简单些&#xff0c;只要将小人推动的四个方向进行…

JS面向对象编程

什么是面向对象编程&#xff08;OOP&#xff09;&#xff1f;用对象的思想去写代码&#xff0c;就是面向对象编程。 面向对象编程的特点 抽象&#xff1a;抓住核心问题封装&#xff1a;只能通过对象来访问方法继承&#xff1a;从已有对象上继承出新的对象多态&#xff1a;多对…

mvp的全称_是让人提神醒脑的 MVP、MVVM 关系精讲!

前言很高兴见到你&#xff01;我是《Jetpack MVVM 精讲》的独立原创作者 KunMinX&#xff0c;GitHub star 8.7k&#xff0c;专注于深度思考和 Jetpack MVVM 的分享。关于 MVP 和 MVVM 本质和区别的文章&#xff0c;本来我是不想写的&#xff0c;因为经过长达一年的耳濡目染 和对…

启航考研计算机课程,计算机考研专业课如何备考

计算机考研科目多&#xff0c;任务重&#xff0c;我们应该如何在有限的时间里更高效的复习&#xff0c;看一下天任启航考研为大家总结的复习计划吧!1、有计划&#xff0c;重基础计算机学科专业基础综合考试涵盖数据结构、计算机组成原理、操作系统和计算机网络基础等学科专业基…

IntelliJ中的实时模板

如上所述这里 &#xff0c;的IntelliJ的现场模板可以让你轻松地插入预定义的代码片段到你的源代码。 我在下面发布了一些我最常用的模板&#xff0c;到GitHub上模板文件完整列表的链接&#xff08;作为我设置新IntelliJ环境时的参考&#xff09;以及将IntelliJ设置文件添加到G…

链家广州二手房的数据与分析——爬取数据

之前在博客分享了利用 R 和 rvest 包爬虫的基础方法。现在就来实战一下&#xff1a;爬取链家网广州 40,000 套二手房的数据。 之前在 Web Scraping with R 说过的爬虫方法在这篇中就不在赘述了。这里就分享怎么样爬取网站中翻页的数据。 >> Web Scraping across Multiple…