String类

String类学习笔记

API: 应用程序编程接口

Java中的API就是指的Java本身为我们提供的具有各种功能的Java类,这些类将底层的实现封装了起来,

我们不需要关心这些类是如何实现的,只需要学习这些类如何使用即可,我们可以通过帮助文档来学习这些API如何使用

String构造方法:

通过构造方法创建 :

直接赋值的方式:String 对象 =" ";字符方式;public char[] ch =new char();

通过new创建的字符串对象,每一次new的时候都会申请一个内存空间,虽然内容相同,但是在堆内存中的地址值是不同的.

直接赋值方式创建 :

以String 标识符 = ""方式给出的字符串,只要字符序列相同(顺序和大小写),无论在代码中出现几 次,Jvm虚拟机只会简历一个String对象,并在字符串池中维护.

String对象的特点:可以这样理解:

​ 在Java中有一个字符串池,所有通过String创建的字符串常量,如String str=“abc”,String str1=“cba”,都是放在这个字符串池中的,当你又一次创建String str2="abc"时,其实Java并不会重新创建一个abc,而是会在字符串池中寻找,是否存在字符串常量abc,如果找到,则把这个字符串abc的引用复制给str2,如果没有,则会创建一个,每次new出来的String其地址值不同

length(); equals();equals方法用来比较两个字符串内容是否相同(严格区分大小写),与地址值无关,只是比较内容charAt();转大写:toUpperCase()转小写toLowerCase();不区分大小写:CompareNoCase()换字符:replace()

字符串拼接:

字符拼接concat()@NotNull

charAt();返回字符内容

比较字符内容:compareTo 如果元素一致比大小,如果大小一直比较ascii值

substring() 截取字符串

StringBuilder:是一个可变的字符串类,我们可以把它看成是一个容器

字符串是可变的并不创建新的字符

StringBuffer:同StringBuilder

区别:StringBuffer是线程同步安全的–一般多线程用
StringBuilder是线程不同步的,不安全,jdk5才出–一般单线程用(多线程可以自己加锁)
两个功能一模一样

String和StringBuilder区别:

String的内容不可变,它只能修改String的引用,不可修改数据而StringBuilder类的内容可以改变,可以修改引用地址即数据的修改

String类的内容是不可变的,指的是当String类初始化完之后,我们只可以修改String类的引用来达到更改内容的效果,但是不可以修改原本在堆内存中的数据.

StringBuilder类内容是可变的,指的是我们可以修改StringBuilder的引用地址,也就是堆内存中的数据.

StringBuilder:
在StringBuilder对象后面添加数据并且返回自身.如果不返回自身的话,本身的数 据也是会追加的,返回自身是因为可以通过链式编程的方式进行多次数据的追加.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值