StringBuilder拼接(截取)想要的字符串

一、字符串拼接

import java.util.ArrayList;
/*
* 用StringBuilder拼接想要的字符串
* 开发中可用来拼接查询条件等,新手一枚,有小伙伴有更好的方法可以分享一下哦,如有错误请指正,万分感谢
* */
public class testStringBuilder {
    public static void main(String[] args) {
        StringBuilder sb =new StringBuilder();
        ArrayList list = new ArrayList<>();//定义一个List并往其中添加字符串(四个序列号)
        list.add("2022121212");
        list.add("2022121211");
        list.add("2022121213");
        list.add("2022121214");
        System.out.println("输出原List为:"+list);//输出原List
        for (int i = 0; i 

拼接字符串可以用到两种不同的类 ,一种是StringBuild ,另一种为StringBuffer。和String类不同的时,StringBuild和StringBuffer能够被多次修改,且不产生新的未使用的对象。
在使用 StringBuffer 类时,每次都会对 StringBuffer 对象本身进行操作,而不是生成新的对象,所以如果需要对字符串进行修改推荐使用 StringBuffer。

StringBuilder 类在 Java 5 中被提出,它和 StringBuffer 之间的最大不同在于 StringBuilder 的方法不是线程安全的(不能同步访问)。

由于 StringBuilder 相较于 StringBuffer 有速度优势,所以多数情况下建议使用 StringBuilder 类。

1. 三元表达式使用

上面例子种如果不使用三元表达式,也可以这样写,效果一样,三元表达式使代码更简洁,推荐使用三元表达式

在这里插入代码片
```import java.util.ArrayList;
/*
* 用StringBuilder拼接想要的字符串
* 开发中可用来拼接查询条件等,新手一枚,有小伙伴有更好的方法可以分享一下哦,如有错误请指正,万分感谢
* */
public class testStringBuilder {
    public static void main(String[] args) {
        StringBuilder sb =new StringBuilder();
        ArrayList<String> list = new ArrayList<>();//定义一个List并往其中添加字符串(四个序列号)
        list.add("2022121212");
        list.add("2022121211");
        list.add("2022121213");
        list.add("2022121214");
        System.out.println("输出原List为:"+list);//输出原List
        
        for (int i = 0; i <list.size() ; i++) {
     		 //  sb = (i!=list.size()-1 ?sb.append("'" + list.get(i) + "',"):sb.append("'" + list.get(i) + "'");        
            if (i != list.size() - 1) {
                sb.append("'" + list.get(i) + "',");
            } else {
                sb.append("'" + list.get(i) + "'");
            }

        }
        System.out.println(sb);//输出拼接好的字符串
    }
}

//三元表达式语法
// (关系表达式) ? 表达式1 : 表达式2;
//关系表达式为true,则执行表达式1,否则执行表达式2
//输出最大年龄
//        int dadAge = 39;
//        int mamAge = 37;
//        int max = mamAge > dadAge ? mamAge : dadAge;
//        System.out.println("年龄最大为:"+max+"岁");

二.字符串截取

字符串截取用substring(),它可截取字符串某部分,语法 string.substring(from, to)
例如:

public class testSubString {
    public static void main(String[] args) {
        //截取身份证信息的出身年月日
     String idCard="532165200010104361";
     System.out.println(idCard.substring(6,14));//这里6对应上面数字的第八位(开始截取的位置),14对应上面数字的第15位(截止截取的位置)
        //输出如下:
        // 20001010
    }
}

你可能感兴趣的:(java)