JAVA基础09_OBJECT类_String类_Stringbuilder

package com.d;

public class Test_object01 {
    /**
     * ==的比较:
     *          比较基础数据类型,比较的是基础数据类型的值是否相等
     *          比较引用数据类型,比较的是引用的地址是否相等
     *
     * 比较对象是否相等的方法:
     *      Object中的equals(Object s)方法,重写此方法进行比较,生成即可。
     */

    @Override
    public boolean equals(Object obj) {
        return super.equals(obj);
    }
}

package com.e;

public class Test_Stringbuilder {
    /**
     * String和Stringbulider的区别:
     *      String每次创建都在方法区的常量池开辟一个新的空间去存储字符串,效率太低
     *      String s = "hello";
     *      s += "world";
     *      这个操作开辟了3个字符串空间 hello,world,helloworld;
     *
     *      Stringbuilder是一个可变的字符串类。
     *      Stringbulider s = "hello":
     *      s += "world";
     *      这个操作只开辟一个字符串空间,hello再拼接world。
     *
     *      Stringbuilder只能通过new对象来创建;
     *
     *      Stringbuilder的添加和反转:
     *          添加:不管添加什么类型,输出都是字符串
     *              链式编程:append返回的是一个对象
     *          反转:reverse()
     *
     *      String和Stringbuilder相互转换:
     *          Stirng转成Stringbuilder用,带参构造方法;
     *          Stringbuilder转成String用,Stringbuilder的to_String方法。
     *
     *      把数组拼接成字符串:
     *          对数组便利,用appand追加到Stringbuilder里。
     *          原因:用String拼接效率太低,使用Stringbuilder拼接后再变成字符串提高效率
     *
     *      字符串的反转:
     *          入参s String
     *              return new Stringbuilder(s).reverse().to_String;//此处也体现了链式编程
     */

    public static void main(String[] args) {
//        StringBuilder s = new StringBuilder("hello");
//        s.append("world");

//        StringBuilder s = new StringBuilder("hello");
//        s.append("1");
//        s.append(true);
//        s.append(100);
//        System.out.println(s);

        //链式编程
//        StringBuilder s = new StringBuilder("hello");
//        s.append("world").append("123").append("asdtg");
//        System.out.println(s);

        StringBuilder s = new StringBuilder("hello");
        s.reverse();

        System.out.println(s);
    }
}

String字符串内存图

 

StringBuilder内存图

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值