可能一般我们需要将数组里的元素转为字符串或者将某个集合里的元素提取出来或者转换需要用到这种拼接,在循环遍历中每个元素的时候在末尾加入特定的分隔符,

这里我们举例这个集合为自己创建的数组。

之前我们可能这么写,拼接完成在最后面多出多余符号:

String strTableData = "";

for (int i = 0; i < 5; i++){

strTableData += i + ",";

}

z这样打印出来的结果可能是这样的:

0,1,2,3,4,

会发现在循环遍历的时候后边多出了一个分隔符,我们这时候可能在遍历后边取截取字符串:

if (StringUtils.isNotBlank(str))

strTableData = strTableData.substring(0, strTableData.length() - 1);

从而最终得到我们想要的结果

0,1,2,3,4

s虽然这种方法一点毛病都没有,但是有没有比这个代码更少,执行起来更快的方法了?

1.在循环里边加判断

String strTableData = "";

for (int i = 0; i < 5; i++){

if (StringUtils.isNotBlank(strTableData))

strTableData += ",";

strTableData += i;

}

2.根据循环次数

3.jdk8 StringJoiner

List strList = Arrays.asList("a", "b", "c");

StringJoiner subStr = new StringJoiner(",");

for (String strData : strList){

subStr.add(strData);

}

System.out.println(subStr.toString());

3.springBuilder或springBuffer

java 去掉分隔符_Java字符串拼接去掉首尾中间用分隔符分割相关推荐

  1. c++ to_string 指定字符位数_Java 字符串拼接,去首尾, 判空, 类型转换

    去掉首尾空白字符 使用trim()方法可以移除字符串首尾空白字符. 空白字符包括空格,t,r,n: String s = "t u3000 hello t n r"; System ...

  2. java 字符串倍_java字符串拼接与性能分析详解

    假设有一个字符串,我们将对这个字符串做大量循环拼接操作,使用"+"的话将得到最低的性能.但是究竟这个性能有多差?如果我们同时也把StringBuffer,StringBuilder ...

  3. java拼接字符串的_Java字符串拼接(连接)

    对于已经定义的字符串,可以对其进行各种操作.连接多个字符串是字符串操作中最简单的一种.通过字符串连接,可以将两个或多个字符串.字符.整数和浮点数等类型的数据连成一个更大的字符串. String 字符串 ...

  4. java拼接字符串_Java字符串拼接

    字符串拼接 String 在Java中,String是一个不可变类,所以String对象一旦在堆中被创建出来就不能修改. package java.lang; //import ... public ...

  5. java 字符串拼接_JAVA字符串拼接常见方法汇总

    字符串的拼接,常使用到的大概有4种方式: 1.直接使用"+"号 2.使用String的concat方法 3.使用StringBuilder的append方法 4.使用StringB ...

  6. java idwork长度_java 字符串id

    Java FutureTask import java.util.ArrayList; import java.util.concurrent.Callable; import java.util.c ...

  7. (十)Java工具类StringUtils字符串拼接(join)详解

    String是不可变的如果使用"+"号拼接字符串每次都会产生一个新的对象,让后将新的对象引用指向变量,这样就会产生大量无用的对象(垃圾),对象没有引用指向一段时间后GC就会开始执行 ...

  8. [改善Java代码]自由选择字符串拼接方法

    对一个字符串拼接有三种方法:加号,contact方法,StringBuffer或者StringBuilder的append方法,其中加号是最常用的.其他两种方式偶尔会出现在一些开源项目中,那么这三者有 ...

  9. java字符串切割_java字符串常用操作方法(查找、截取、分割)

    如下所示: public class 字符串常用操作 { public static void main(String[] args) { /* * 查找子串 */ String str1=" ...

最新文章

  1. SRM 721 DIV2
  2. Python开源爬虫项目代码:抓取淘宝、京东、QQ、知网数据--转
  3. gunicorn多进程不死_WEB,gunicorn - 无论是多进程、多线程、协程模式,同一个浏览器窗口多个标签页访问同一个url,看上去不会并发的问题...
  4. poj2513 Fence Repair(小根堆)
  5. php is_null(,PHP empty() isset() is_null() 区别与性能比较
  6. 大型网站中的验证码解决方案
  7. 生成Treeview树 递归方法
  8. -bash: vim: command not found 两种解决方法
  9. 前端实现文件下载的功能
  10. VScode怎么查看python源码
  11. (七)HyperledgerFarbic1.4- Fabric的SDK使用
  12. Google Play上架总结(一)为什么要上架Google Play
  13. CSS面试须知--盒子模型、浮动及定位
  14. leetcode每日一题·救生艇问题(Python)
  15. linux下在终端打开文件夹
  16. 【U8+】卸载远程通后,U8提示错误无法加载DLL“UFPAClient.dll”找不到指定的模块。
  17. A.5 实验5:课程列表
  18. 【JavaSE】基础语法练习---减肥计划(流程控制)
  19. RAID5 磁盘阵列的故障以及修复要点
  20. JVM监控及诊断工具命令行篇之jps

热门文章

  1. java公众号图片上传_java微信公众号上传下载图片,springmvc demo
  2. ubuntu16.04+anaconda3+python2.7虚拟环境+caffe配置过程及踩坑经历
  3. 分数求和、数9的个数、乘法口诀表
  4. bs84c12引脚_HOLTEK推出BS84B08C新一代更高抗干扰能力的A/D Touch MCU
  5. 测量block size 为8K ,自动分配的本地管理表空间的位图block一位能管理多少空间
  6. 疯狂英语超级三最宝典
  7. Mac 用命令行终端打开app应用程序
  8. HTML零基础入门教程
  9. 用U盘安装系统完全教程(zt)
  10. 【日常考试】中山市2016年小学生信息学竞赛试(shui)题