今天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("^\\[| |\\]$", ""); } }
时间: 2024-10-02 23:32:59