JAVA中Stringbuilder类的方法是啥?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA中Stringbuilder类的方法是啥?相关的知识,希望对你有一定的参考价值。

参考技术A 如果程序对附加字符串的需求很频繁,不建议使用+来进行字符串的串联,而应该使用java.lang.StringBuilder类,从而使效率大大提高。1、append 就是将信息追加到当前 StringBuilder 的结尾,例如:StringBuilder sb=new StringBuilder("abc");sb.append("123");System.out.println(sb);//输出abc1232、Insert 就是将字符串或对象插入到当前 StringBuilder 对象的指定索引处,例如:StringBuilder sb=new StringBuilder("abc");sb.insert(2, "123");\\x0d\\x0aSystem.out.println(sb);//输出ab123c3、delete 就是删除指定开始索引到结束索引处的字符,作用等同于remove方法,例如:StringBuilder sb=new StringBuilder("abc");sb.delete(0, 1);//删除从索引0到1的字符\\x0d\\x0aSystem.out.println(sb);//输出bc4、replace 就是替换指定索引处的指定字符,例如:StringBuilder sb=new StringBuilder("abc");sb.replace(\'b\', \'B\');\\x0d\\x0aSystem.out.println(sb);//输出aBc另外,你说的toString是每个继承于Object对象的类都有的方法,作用是将对象转换为显示的字符串,SringBuilder重写了这个方法,返回StringBuilder对象的字符串内容。在使用System.out.println()输出对象时,如果不显示调用toString方法,该方法会被自动调用。

String类的常用方法+StringBuilder

在这里插入图片描述
1.字符串的获取

//String字符串常用的方法

public class Text1 {
    public static void main(String[] args) {
        //关于字符串的索引,从下标0开始
        String str ="JAVA 编程 基础";

        //方法一求字符串的长度,这里空格也算一个单位长度
        System.out.println(str.length());
        //方法二:求字符串中某单个字符
        System.out.println(str.charAt(6));
        //方法三:求字符串的子串
        //这里返回第五位到最后一位的字符
        System.out.println(str.substring(5));
        //方法四:输出任意某个子串
        //注意,这里的7是指输出5-6之间的子串,即7之前的
        System.out.println(str.substring(5,7));


    }
}

2.查找某个字符或者某个字符子串在字符串中出现的位置

//indexOf和lastIndexof的使用
//查找某个字符或者某个字符子串在字符串中出现的位置
public class Text2 {
    public static void main(String[] args) {
        //定义一个字符串,采用构造方法
        String str =  new String("JAVA基础,java基础");
        System.out.println("字母A在字符串总第一次出现的位置"+str.indexOf('A'));
        //这里"基础"要加入转义符号\\
        System.out.println("字符串中\\"基础\\"第一次出现的位置"+str.indexOf("基础"));
        System.out.println("字符串中A最后一次出现的位置"+str.lastIndexOf('A'));
        System.out.println("字符串中\\"基础\\"最后一次出现的位置"+ str.lastIndexOf("基础"));
       

    }
}

3.字符数组与byte数组之间的转换

//字符串和byte数组之间的转换
public class Text3 {
    public static void main(String[] args) {
        String str = new String("java 基础学习");
        //调用getBytes()
        byte[] arrs = str.getBytes();
        for(int i=0;i< arrs.length;i++){
            System.out.print(arrs[i]+" ");
        }
        System.out.println();
        //byte数组转换成字符数组
       String arry1 = new String(arrs);
        System.out.println(arry1);

    }
}

4.探究在字符串中==与equals的区别

//探究在字符串中==与equals的区别
public class Text4 {
    public static void main(String[] args) {
        //1.直接定义的方法创建字符串
        //2.利用创建对象的方法创建字符串
        String str1 = "java基础";
        String str2 = "java基础";
        String str3 = new String("java基础");
        //equals表示的是字符串的内容相同
        System.out.println("str1与str2内容相同"+str1.equals(str2));
        System.out.println("str1与str3内容相同"+str1.equals(str3));
        //str1与str2地址相同,str3与str4地址不相同
        System.out.println("str1与str2地址相同"+(str1==str2));
        System.out.println("str1与str3地址相同"+(str1==str3));
        /*练习题
        String str4 = "imooc";
        char a[]= {'i','m','o','o','c'};
        System.out.println(str4.equals(a));//输出的是false,这里java.lang包下的a表示的是a的地址*/

    }
}

5.String的不可改变性
string对象一旦创建了,是不可修改,不可改变的
所谓的修改其实是创建新的对象,所指的内存空间不变

public class Text5 {
    public static void main(String[] args) {
        //String的不可改变性
        //string对象一旦创建了,是不可修改,不可改变的
        //所谓的修改其实是创建新的对象,所指的内存空间不变
        String str1 = "java基础";
        String str2 = "hello"+str1;//这样赋值其实是在常量池里面重新创建了了一个 (hello java)基础对象
        System.out.println(str2);
        String str3 = new String("hello miooc");
        //取出子串时,常量池中生成hello常量,str3并没有改变
        System.out.println("子串"+str3.substring(0,5));
        System.out.println(str3);

    }


}

StingBuilder的一些常用方法

public class Stirngbuilder {


    public static void main(String[] args) {
        //StirngBuilder字符串具有可改变型
        //StringBuilder的常用方法
        StringBuilder str = new StringBuilder("你好");
        //你好后面加“imooc”
        //str = str.append(',');
        //str = str.append("imooc");
        //System.out.println(str);
        System.out.println(str.append(',').append("imooc!"));
        //把字符mooc转换成MOOC
        //这里有两种方法
        //System.out.println(str.delete(4,8).insert(4,"MOOC"));
        System.out.println(str.replace(4,8,"MOOC"));
        /*练习题
        StringBuilder str2 = new StringBuilder("abcdefg");
        str2.delete(2,4).insert(3,"CD");
        System.out.println(str2);*/

    }
}

以上是关于JAVA中Stringbuilder类的方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章

JAVA 中Stringbuilder类的方法

大数据必学Java基础(五十):String类和StringBuilder类的讲解

JAVA中String和StringBuilder类的特点及使用

Java全栈JavaSE:17.常用类之Object类String类StringBuilder类

Java 常用API

String类的常用方法+StringBuilder