DAY9

1、Object类
Object是所有类的根类,所有的类都直接或者间接的继承Object类;
Object类只有一个空参的构造方法,Object类里面的所有非私有方法子类中都有
在这里插入图片描述
该类下的方法研究:

  • hashCode()
    public int hashCode()返回该对象的哈希码值,哈希值是由地址值计算得来的,一般是唯一的
    在这里插入图片描述
  • getClass()
    public final Class getClass()返回当前运行类的对象
    通过面向对象思想,一个类也可以通过分析封装成一个具体的类,一个类:成员变量,成员方法,构造方法,类名,接口,包名,父类…
  • toString()
    public String toString()将对象转换成字符串
    输出语句会默认调用对象的toString()方法
  • equals()
    public boolean equals(Object obj)指示其他某个对象是否与此对象“相等”;

2、Scanner类
Scanner类是用于接收键盘录入的数据的,可以接收很多基本数据类型还有字符串类型
Scanner类的成员方法:

  • hasNextInt()
    public boolean hasNextInt():当且仅当此扫描器的下一个标记是有有效的int值时才返回true;
    可以在接收一个数据之前用hasNextXxx方法判断要接收的值和当前类型是否一致,如果不一致hasNextXxx方法就会返回false;
    就比如你使用的是nextInt方法接收一个int类型的值,那么可以先使用hasNextInt检查用户输入的值是否可以被int类型接收,如果不可以就不接收,如果强制接收就会报错
    在这里插入图片描述
  • nextLine()
    public String nextLine():将键盘录入的值当做字符串返回
  • next()
    public String next():将键盘录入的有效值进行输出,此方法会将空格当做无效字符;
    注意事项:先使用nextInt再使用nextLine会出现当nextInt接收完值之后,程序就停止了,为什么了?
    在这里插入图片描述
    在这里插入图片描述
    3、String类(重要)
    String类代表字符串。Java程序中的所有字符串字面值(如“abc”)都作为此类的实例实现
    字符串常量是放在方法区中的常量区
  • String(byte[] bytes)
    public String(byte[] bytes):通过使用平台的默认字符集解码指定的byte数组,构造一个新的String
  • String(byte[] bytes,String charseName)
    public String(byte[] bytes,String charseName)通过指定的编码将字节数组转换成字符串
    在这里插入图片描述
  • String(byte[] bytes,int offset,int length)
    将字符数组中的某一部分转换成字符串
    bytes:要解码为字符的byte
    offset:要解码的第一个byte的索引
    length:要解码的byte数
    注意:快捷键:Ctrl+Shift+F:快速格式化代码
    在这里插入图片描述
  • String(char[] value)
    public String(char[] value):将字符数组转换成字符串
    在这里插入图片描述
  • String(char[] value,int offset,int count)
    public String(char[] value,int offset,int count):将字符数组中的一部分转换成字符串
    value:作为字符源的数组
    offset:初试偏移量
    count:长度
    在这里插入图片描述
  • String(String original)
    public String(String original):创建指定参数的字符串的一个副本,这个副本放在堆中
    在这里插入图片描述
    经典面试题:
    1、对象问题
    在这里插入图片描述
    在这里插入图片描述
    图解说明:
    在这里插入图片描述
    2、比较问题
    在这里插入图片描述
    在这里插入图片描述
    图解说明:
    在这里插入图片描述
    依据各个功能将String类的方法进行划分:
  • String的判断功能方法
  • equals(Object obj)
    boolean equals(Object obj):比较当前字符串的值和参数字符串的值是否相等
    在这里插入图片描述
  • equalsIgnoreCase(String str)
    boolean equalsIgnoreCase(String str):忽略英文字母大小写比较
    在这里插入图片描述
  • contains(String str)
    boolean contains(String str):判断当前字符串是否包含参数字符串
    在这里插入图片描述
  • startWith(String str)
    boolean startWith(String str):判断当前字符串是否是以参数字符串开头
    在这里插入图片描述
  • endsWith(String str)
    boolean endsWith(String str):判断当前字符串是否是以参数字符串结尾
    在这里插入图片描述
  • isEmpty()
    boolean isEmpty():判断当前字符串是否为空
    在这里插入图片描述
  • String类获取功能
  • int length()
    获取字符串的长度
  • char charAt(int index)
    获取指定索引位置上面对应的字符
    在这里插入图片描述
  • int indexOf(char ch)
    返回指定字符在此字符串中第一次出现的索引
  • int indexOf(String str)
    返回参数字符串在当前字符串中的第一次出现的索引位置
    在这里插入图片描述
    注意:上述两个可以用第二个来代替
  • int indexOf(char ch,int fromIndex)
    从指定的索引开始搜索ch在当前字符串中第一次出现的索引位置
  • int indexOf(String str,int fromIndex)
    从制定的索引开始搜索str在当期字符串中第一次出现的索引位置
    在这里插入图片描述
  • String sunstring(int start)
    从指定的start索引开始截取到当前字符串的末尾,返回截取的字符串
  • String sunstring(int start,int end)
    截取当前字符从start索引位置开始,end-1位置结束(包含头,不包含尾)
    在这里插入图片描述
  • String类的转换功能
  • public byte[] getBytes()
    使用平台默认编码将字符串转换成字节数组
  • public char[] toCharArray()
    将字符串转换成字符数组
    在这里插入图片描述
  • public static String valueOf(char[] chs)
    将一个字符数组转换成字符串
  • public static String valueOf(int i)
    将一个int的值转换成字符串
    注意:此方法可以用字符串拼接代替
    在这里插入图片描述
  • public String toLowerCase()
    将当前字符串中的英文全部转换成小写
  • public String toUpperCase()
    将当前字符串中的英文全部转换成大写
  • public String concat(String str)
    将当前字符串和参数字符串拼接
    在这里插入图片描述
  • String类的替换功能
  • String replace(char old,char new)
    将当前字符串中的所有old的字符替换成new的参数字符
  • String replace(String old,String new)
    将当前字符串中的所有old字符串替换成new的参数字符串
    在这里插入图片描述
  • 去除字符串的头尾空格
  • String trim()
    注意:此函数一般应用到登录功能
    在这里插入图片描述
  • 按照字典顺序比较两个字符串
  • int compareTo(String str)
    如果参数字符串等于此字符串,则返回值为0;如果此字符串按字典顺序小于字符串参数,则返回一个小于0的值;如果此字符串按字典顺序大于字符串参数,则返回一个大于0的值
  • int compareToIgnoreCase(String str)
    与上述情况类似,只是忽略英文字母大小写
    在这里插入图片描述
    案例:字符串翻转
    在这里插入图片描述
    案例:将字符串“axhhauububbuaa”中的字母“a,b”删除然后输出
    在这里插入图片描述
    4、StringBuffer类及其构造方法
  • StringBuffer和String的区别?
    StringBuffer是一个线程安全的可变容器,里面可存储字符串,里面还提供了一些针对字符串操作的方法
  • StringBuffer底层是基于什么数据结构实现的?
    StringBuffer内部是用字符数组存储字符串
  • public StringBuffer()
    构造一个其中不带字符的字符串缓冲区,其初始容量为16个字符
  • public StringBuffer(int capacity)
    构造一个不带字符,但具有指定初始容量的字符串缓存去
  • public StringBuffer(String str)
    构造一个字符串生成器,并初始化为指定的字符串内容。该字符串生成器的初始容量为16加上字符串参数的长度
    在这里插入图片描述
  • StringBuffer类的成员方法
    添加功能:
  • public StringBuffer appeng(String str)
    将指定的字符串追加到此字符序列
  • public StringBuffer insert(int offset,String str)
    将字符串插入此字符序列中;offset:偏移量;str:一个string
    在这里插入图片描述
    删除功能:
  • public StringBuffer deleteCharAt(int index)
    删除指定索引上面的字符
  • public StringBuffer delete(int start, int end)
    删除指定索引start到结束索引end的子字符串
    start:起始索引(包含);end:结束索引(不包含)
    在这里插入图片描述
    替换功能:
  • public StringBuffer replace(int start,int end,String str)
    使用给定String中的字符串替换此序列的子字符串中的字符
    start:起始索引(包含);end:结束索引(不包含);str:将替换原有内容的字符串
    在这里插入图片描述
    反转功能:
  • public StringBuffer reverse()
    将字符串反转
    在这里插入图片描述
    截取功能:
  • public String substring(int start)
    从开始索引start截取到字符串末尾的一个子字符串
  • public String substring(int start,int end)
    从开始索引start截取到结束索引end-1
    在这里插入图片描述
    注意:截取功能和前面几个功能不同,返回值类型时String类型,本身并没有发生改变
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值