今天review代码,看见某些大爷在将泛型为String类型的集合或String类型的数组转化为逗号间隔字符串形式时仍然只顾结果不注重过程,“大爷”咱能负点责任吗?

将泛型为String类型的集合转化为逗号间隔字符串形式:

测试类:

package com.ghj.packageofclient;import java.util.ArrayList;
import java.util.List;import com.ghj.packageoftool.StringUtils;public class Test {public static void main(String[] args) {List<String> stringList = new ArrayList<String>();stringList.add("fd422114-0f9f-4f04-bc79-09698121f999");stringList.add("5de14c97-348c-46b6-8519-f246b5f53d3a");stringList.add("b2056a9e-8fba-4119-ab5a-79d3ec0100e0");stringList.add("20254564-796e-43d5-bcd2-9fe157f2b18c");stringList.add("sa31b130-9064-42d9-be2c-321773b2b2b5");System.out.println(StringUtils.stringListToString(stringList));}
}

第一种方式:

package com.ghj.packageoftool;import java.util.List;public class StringUtils {/*** 将泛型为String类型的集合转化为逗号间隔字符串形式* * @author 高焕杰*/public static String stringListToString(List<String> stringList){if (stringList == null || stringList.size() <= 0) {return null;}String result = "";for (String string:stringList) {result += string + ",";}return result.substring(0, result.lastIndexOf(","));}
}

总结:这种方法一看就是脑残的人写出来的——大哥, String、StringBuffer和StringBuilder之间的区别你忘了吗?
        第二种方式:

package com.ghj.packageoftool;import java.util.List;public class StringUtils {/*** 将泛型为String类型的集合转化为逗号间隔字符串形式* * @author 高焕杰*/public static String stringListToString(List<String> stringList){if (stringList == null || stringList.size() <= 0) {return null;}StringBuffer stringBuffer = new StringBuffer();for (String string:stringList) {stringBuffer.append(string + ",");}return stringBuffer.toString().substring(0, stringBuffer.toString().lastIndexOf(","));}
}

总结:这种方法是大家常用的,可是这是最简单的方法吗——看第三种方式
        第三种方式:

package com.ghj.packageoftool;import java.util.List;public class StringUtils {/*** 将泛型为String类型的集合转化为逗号间隔字符串形式* * @author 高焕杰*/public static String stringListToString(List<String> stringList){if (stringList == null || stringList.size() <= 0) {return null;}return stringList.toString().replaceAll("^\\[| |\\]$", "");}
}

总结:哥啊,这才是最简单的方式啊!!!
        将String类型的数组转化为逗号间隔字符串形式:

测试类:

package com.ghj.packageofclient;import com.ghj.packageoftool.StringUtils;public class Test {public static void main(String[] args) {String [] stringArray = new String[]{"fd422114-0f9f-4f04-bc79-09698121f999","5de14c97-348c-46b6-8519-f246b5f53d3a","b2056a9e-8fba-4119-ab5a-79d3ec0100e0","20254564-796e-43d5-bcd2-9fe157f2b18c","sa31b130-9064-42d9-be2c-321773b2b2b5"};System.out.println(StringUtils.stringArrayToString(stringArray));}
}

上面给出了将泛型为String类型的集合转化为逗号间隔字符串形式的最简单方法,所以这里就直接给出了将String类型的数组转化为逗号间隔字符串形式的最简单方法:

package com.ghj.packageoftool;import java.util.Arrays;public class StringUtils {/*** 将String类型的数组转化为逗号间隔字符串形式* * @author 高焕杰*/public static String stringArrayToString(String [] stringArray){if (stringArray == null || stringArray.length <= 0) {return null;}return Arrays.toString(stringArray).replaceAll("^\\[| |\\]$", "");}
}

再谈如何以最简单的方法将泛型为String类型的集合或String类型的数组转化为逗号间隔字符串形式相关推荐

  1. 再谈华罗庚先生的《统筹方法》

    华罗庚先生是中国最有成就的数学家之一,我在学生时代曾经学习一篇他写的文章<统筹方法>,也许是对我一生影响最深的几篇文章之一.他用非常简单.通俗易懂的文字,为我们讲述了统筹方法,如若在人们日 ...

  2. 再谈Windows Service - 一个简单的自我例子和部署

    我们的服务需要做两件自动的事情,一个是往表格中定时插入数据,另一个就是 往文件中定时插入内容 因此,我们需要做一个工作类,这个类可以是一个抽象类,如下: TaskWorker using System ...

  3. 拉普拉斯算子属于卷积方法吗_2020 年 GNN 开卷有益与再谈图卷积

    题记 2019 年,GNN 从来没有这样繁荣过.一方面,计算机视觉.自然语言处理等领域都忽如一夜春风来,反复"发现"了自身潜在的 Graph 结构,与 GNN 融合.另一方面,GN ...

  4. 再谈Jquery Ajax方法传递到action

    之前写过一篇文章Jquery Ajax方法传值到action,本文是对该文的补充. 假设 controller中的方法是如下: public ActionResult ReadPerson(Perso ...

  5. 再谈目前QQ空间主流的赚钱方法

    重点导读  同样是腾讯旗下的产品,QQ空间和微信,这两个在今年都得到了重视,各种微信营销培训和QQ空间流量培训,满天飞,让很多新手朋友眼花缭乱.在这里我就说下,用QQ空间来获取人民币.因为QQ空间流量 ...

  6. java ajax传递到action_再谈Jquery Ajax方法传递到action(转)

    假设 controller中的方法是如下: public ActionResult ReadPerson(PersonModel model) { string s = model.ToString( ...

  7. 再谈HTTP2性能提升之背后原理—HTTP2历史解剖

    即使千辛万苦,还是把网站升级到http2了,遇坑如<phpcms v9站http升级到https加http2遇到到坑>. 因为理论相比于 HTTP 1.x ,在同时兼容 HTTP/1.1 ...

  8. 再谈工作的主动性和有效提问

    主动性是一个非常奇怪的词,每个人对这个词的理解都不一样.可能一个管理者对员工说,你要提高主动性,但是员工会非常苦恼,甚至崩溃:我都天天加班了,你居然还在谈提高主动性? 结合很多应届生在实际工作中遇到的 ...

  9. 再谈符号间干扰(一)

    在对话通信原理系列相关博文中,有这么一篇博文:通信系统之信道,这篇博文里面已经讲过符号间干扰(ISI),发生符号间干扰的原因在于信号带宽大于相干带宽,同一个意思的表达为:发送符号的周期小于最大时延扩展 ...

  10. 我的WCF之旅 (11): 再谈WCF的双向通讯-基于Http的双向通讯 V.S. 基于TCP的双向通讯...

    在一个基于面向服务的分布式环境中,借助一个标准的.平台无关的Communication Infrastructure,各个Service通过SOAP Message实现相互之间的交互.这个交互的过程实 ...

最新文章

  1. Oracle 变量绑定与变量窥视合集系列二
  2. spring:如何用代码动态向容器中添加或移除Bean ?
  3. 如何在阅读参考文献时,有效率的做笔记?
  4. android开发 Gradle多渠道打包以及集成360加固
  5. IBM 公开最新 Power 处理器架构
  6. matlab二维度矩阵转化三维_Matlab三维矩阵运算
  7. html5-6 Frame框架窗口类型
  8. Python 数据科学入门
  9. 第一百四十一节,JavaScript,封装库--DOM加载
  10. 【重难点】【分布式 01】RESTful、RPC 对比、Dubbo、Spring Cloud 对比、Eureka、Zookeeper、Consul、Nacos 对比、分布式锁
  11. mvc 前段定义变量_3分钟短文 | Laravel blade模板里优雅地定义PHP变量
  12. 我们为何总是掉进“杀熟”的圈套?
  13. Linux——常用命令
  14. 深度学习之学习(3-4)YOLOV4
  15. open_table和opened_table的区别
  16. 学习总结7.1 Linux Rsh服务器
  17. 2011考研数学二第(6)题——积分大小关系比较
  18. 【20230407】NVIDIA显卡算力、Jetson比较
  19. golang emoji表情处理
  20. Mob第三方登录快速集成开发

热门文章

  1. Nature:新发现挑战神经元作用传统理论 [转自科学网]
  2. 为程序使用内存缓存(MemoryCache)
  3. easyui-combobox实现placeholder提示效果
  4. python2 与 python3的区别
  5. 敏捷开发中XP与SCRUM的区别
  6. 农民伯伯 谈 接口 [interface]
  7. 公司管理系列--最难挖的阿里,最好挖的百度;最难走的360,最易走的腾讯
  8. windows下apache最新下载、安装配置
  9. Mac 苹果OS X小技巧:如何更改文件的默认打开方式
  10. Python正则表达式详解