String与StringBuilder对于一般的字符串添加即其他用法


String a=new String("a");//如果地址是001
String b="bc";
a+=b;
生成基本a="abc";//占的地址不是001而是新的内存地址
StringBuilder a=new StringBuilder("a")//如果内存地址001
String b="bc";
a+=b;
//如果a是001地址依旧是001

只不过StringBuilder的添加不上+,而是
对象.append();
字符串反转reverse();

tringBuilder a=new StringBuilder();
        a.append("a").append("b");
        System.out.println(a);//输出ab
//因为append返回对象本身可用链式编程就是a.append("a").append("b");以前就做过递归指针

StringBuilder->String toString();
String->StringBuilder 构建StringBuilder的时候

import java.util.*;
public class Main {
    public static void main(String[] args) {
        Scanner cin = new Scanner(System.in);
        int[] a = {1, 2, 3, 4};
        System.out.println(Arrays.toString(a));//数字直接转换为字符串String形式
        System.out.println(f(a,a.length));//自己写的方法
        System.out.println("reverse:  "+Reverse(cin.nextLine()));//字符串反转
    }
    public  static String f(int[] a, int n) {
        StringBuilder b = new StringBuilder();
        b.append("[");
        for (int i = 0; i < n; i++) {
            if (i == n - 1) {
                b.append(a[i]);
            } else {
                b.append(a[i] + ",");
            }
        }
        b.append("]");
        String c=b.toString();
        return c;
    }

    public static String Reverse(String a){
        return new StringBuilder(a).reverse().toString();
    }
}