day-11 常用工具类_1

Object类

getClass方法: 此方法用于返回该对象的真实类型(运行时的类型,编译看左边,运行看右边)
hashCode方法: 返回该对象的十进制的哈希值
toString方法: 返回对象的字符串表现形式,全限定名+@+十六进制的hash值(地址)
equals方法: Object类的equals方法的作用是比较两个对象是否相等。比较的是内存地址
finalize方法:当垃圾回收器回收垃圾对象的时候,自动调用

包装类

八中基本数据类型对应包装类:Byte,Short,Integer,Long,Float,Double,Character,Boolean
提供一组方法,用于将其中某一种类型转换成其他类型 xxxValue()方法

//将字符串转换成int或者是double
String s = “123”;
//方式1:
int i = Integer.parseInt(s);
//方式2:
int i2 = Double.valueOf(s);

装箱和拆箱:
装箱就是将基本类型转换成包装类
拆箱就是将包装类型转换成基本类型

jdk1.5之前装拆箱:
byte b = 10;
//装箱
Byte b1 = Byte.valueOf(b);
//拆箱
byte b2 = b1.byteValue();
jdk1.5之后自动装拆箱。

String类

  • charAt(index) 获取字符串指定下标位置上的字符
  • indexOf(“”)获取指定字符串的字符串的下标位置(从前往后找),不存在返回-1
  • lastIndexOf(“”)获取指定字符串的字符串的下标位置(从后往前找),不存在返回-1
  • length()获取字符串长度
  • equals() 判断两个字符串是否相等
  • equalsIgnoreCase()判断两个字符串内容是否相等
  • contains()判断是否包含指定字符
  • endsWith()判断是否以指定字符串结尾
  • startsWith()判断是否以指定字符串开头
  • isEmpty 判断字符串是否为空串(长度为0,而不是null)
  • replace(old,new)将字符串中指定的内容替换,返回值为新字符串,需用字符串接收
  • subString()截取从指定下标开始直到字符串结尾的字符串
  • split()将字符串按指定规则进行切割,并返回一个数组
  • toCharArray()将字符串转换成字符数组
  • getBytes()将字符串转换为字节数组
  • trim()去除字符串前后的空格
  • toUpperCase()将字符串转换成大写
  • toLowerCase()将字符串转换成小写
  • String.valueOf()将其他数据类型转换为字符串类型

StringBuffer类/StringBuilder类

  • append(字符串)在原有的基础上追加字符创
  • insert(下标,字符串)在指定下标位置上添加字符串
  • delete(下标,下标)删除指定下标范围内的字符串
  • reverse()将字符串内容进行翻转
  • toString()将StringBuffer类型转换为String类型
    StringBuffer类与StringBuilder类一致

常量池

String s1 =“abc”;
首先去常量池去找是否有"abc",如果有则直接让s指向该"abc",没有则放入"abc"让s指向。

String s2 = new String(“abc”);
先在堆空间中创建一个对象并让s指向他,再在常量池中放入一个"abc"(如果存在则不放)

s2.intern();
将堆中的s对象在常量池中找到相同的字符串,返回常量池中的地址

String str1=“a”;String str2=“bc”;
String str =str1+str2;

此时的str地址并不在常量池中,所以str!=s1。因为在字符串变量拼接时,底层代码进行了优化,自动创建StringBuffer对象使用append()方法进行拼接,导致返回地址数据在堆空间中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值