java基础day12

Day12
一、StringBuffer类

1、线程安全的可变字符序列(可变的字符串)《jdk1.0》
2、一个类似于String的字符串缓冲区
3、某些方法调用可以改变该序列的长度和内容《append()、insert()》

String、StringBuffer的区别:  

相同点:都是对字符序列进行操作
不同点:1.String的数据是不可变的,StringBuffer的内容是可变
2.StringBuffer自带缓冲区,读取数据块,效率更高

4、StringBuffer的构造:(1)StringBuffer():无参的构造器《默认会给16个字符大小的缓冲区》capacity
()是获取缓冲区容量大小的方法
(2)StringBuffer(int capacity):会默认给一个容量大小值
5、StringBuffer常规的一次方法:
(1)追加内容:append():向末尾追加数据;
insert(int offset,char c):向指定位置追加数据,offset参数传递是追加的索引,char是追加的字符;
(2)删除内容:deleteCharAt(int index):根据索引进行删除;
delete(int start,int end):根据区间进行删除,start:开始区间,end:结束区间,索引从0开始,包头不包尾;
(3)获取内容:charAt(int index):根据索引获取字符;
indexOf(String str):查找是否存在这个字符,存在返回当前的索引,不存在返回-1;
length():获取字符串的长度;
replace(int start,int end,String str):根据区间来进行替换;
reverse():控制字符反转;
toString():转换成String;

String和StringBuffer的相互转换:  
  • String转成StringBuffer:1.通过构造方法new StringBuffer(“ABC”);2.通过调用其append,newStringBuffer().append(“ABC”)
  • StringBuffer转成String:1.通过toString()方法;2.通过String构造方法new String(new StringBuffer)
二、StringBuiler类

1、一个可变的字符序列
2、多个线程是不安全的

StringBuffer和StringBuilder的区别:版本不一样;StringBuffer多线程安全,效率低(开发里使用比较多);StringBuilder多线程不安全,效率较高  
三、包装类(基本数据类型的引用数据类型)
  • 基本数据类型里,除了int==》Integer,char==》Character之外,其他的包装类都是把首字母换成大写
  • 包装类的好处:可以使用包装类里的方法;可以进行类型的相互转换;集合里的泛型必须使用引用数据类型
    1、Integer类:在对象中包装了一个基本类型int的值,Integer类型的对象包含一个int类型的字段
    2、构造方法:public Integer(int value)、public Integer(String s)第二个构造传递的参数必须是数字的String类型,否则会出现异常(java.lang.NumberFormatException)
    3、常量:public static final int MAX_VALUE:获取int类型最大的值;public static final int MIN_VALUE:获取int类型最小的值;public static final int SIZE:获取int类型的位数(所有的包装类都会有这三个常量)
    4、常规方法:public byte byteValue():返回一个byte,相互转换的时候不要超过最大的范围;
    public static int parseInt(String s):静态方法,把String转换成int类型的方法(最常用);
    public static String toBinaryString(int i):把int类型转换成二进制;
    public static String toOctalString(int i):把int类型转换成八进制;
    public static String toHexString(int i):int类转换为16进制;
    public static Integer valueOf(int i):把int类型转换成包装类;
String、int、Integer相互转换:  
  • String转换int:static int parseInt(String s)
  • String转换Integer:构造器new Integer();static Integer valueOf(String s)
  • int转换String:new String(int i);使用(+"")《常用》
  • Integer转换String:toString()方法
  • Integer<==>int:自动拆箱、装箱(直接赋值);new Integer(int),int intValue()(手动装箱、拆箱)
四、正则表达式
  • 就是对一个字符串进行校验的规则,主要做验证,把复杂的问题简单化;不好地方:记忆量大,而且不一定写得对
  • 正则表达式的三个使用方法:第一是比较matches(String regex);第二是分割split(String regex);第三是替换replaceAll(String regex, String replacement)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值