字符串拼接

字符串拼接方法

方式一 +

“+”,是java操作运算符比较常用的,也是简单直接的一种方式。

         String aa = "好好学习";
         String bb = "天天向上";
         System.out.println(aa+bb);

方式二 StringBuilder.append()和StringBuffer.append()

先有StringBuffer后有StringBuilder,两者就像是孪生双胞胎,该有的都有,只不过StringBuffer大部分方法都经过synchronized修饰,所以StringBuffer是线程安全的,但是它效率就相对StringBuilder较低

         String aa = "好好学习";
         String bb = "天天向上";
         StringBuffer stringBuffer=new StringBuffer("我要");
         StringBuilder stringBuilder=new StringBuilder("woyao");
         stringBuffer.append(aa).append(",").append(bb);
         stringBuilder.append(aa).append(",").append(bb);
         System.out.println(stringBuffer);
         System.out.println(stringBuilder);

方式三 String类下的cocat()方法

如果拼接的字符串是null,concat会抛出NullPointerException。如果拼接的字符串是一个空字符串(“”),那么concat的效率要更高。如果拼接的字符串非常多,concat的效率就会下降,因为创建的字符串对象越多,开销越大。

         String aa = "好好学习";
         String bb = "天天向上";
         String sss=aa.concat(bb);
         System.out.println(sss);

方式四 String类下的join()方法

JDK1.8提供了一种新的字符串拼接姿势:String类增加了一个静态方法join,第一个参数为字符串连接符

         String aa = "好好学习";
         String bb = "天天向上";
         String sss=String.join("",aa,bb);
         System.out.println(sss);

 

方式五 StringJoiner

StringJoiner是JDK1.8,java.util包中的一个类,用于构造一个由分隔符重新连接的字符序列

         String aa = "好好学习";
         String bb = "天天向上";
         StringJoiner sj=new StringJoiner(",");
         sj.add(aa).add(bb);
         System.out.println(sj.toString());

 

方式六 StringUtils.join()

需要导入 org.apache.commons.lang3.StringUtils

         List<String> list = new ArrayList<>();
  list.add("111");
  list.add("222");
  list.add("333");
  String join = StringUtils.join(list,"-");//传入String类型的List集合,使用"-"号拼接
  System.out.println(join);
 
  String[] s = new String[]{"123","456"};//传入String类型的数组,使用"-"号拼接
  String join2 = StringUtils.join(s,"-");
  System.out.println(join2);
 
posted @ 2022-09-30 16:37  随便起的名  阅读(73)  评论(0)    收藏  举报