String 的基本使用

1. 内存分析

字符串其实是一种引用数据类型,String是一个final class是一个不可以被继承的最终类,比较时应使用equals方法。

  • 字符串是在方法区的常量池中开辟的字符数组(不是在new String()的情况下

  • 当你用**new String()**时,栈中的地址指向堆中,堆中指向常量池

2. 常用方法
  1. 构造方法

    构造方法描述
    String()无参构造方法,实例化一个空字符串 “”
    String(String str)通过一个指定的字符串,实例化一个新的字符串
    String(char[] array)通过一个字符数组,实例化一个新的字符串
    String(char[] array, int offset, int count)将字符数组中的指定部分拼接成一个字符串
    String(byte[] array)通过一个字节数组,实例化一个新的字符串
    String(byte[] arr, int offset, int count)将字节数组中的指定部分拼接成一个新的字符串
  2. 非静态方法

    注意事项
    	由于字符串的空间开辟在常量池,引用地址指向的空间,里面的内容是不能改变的。
    	因此,在字符串操作中,所有的对字符串进行修改的操作,修改的都不是字符串本身。
    	修改结束之后,也不会对原来的字符串造成任何的影响。
    	这些修改方法,都会在方法内部实例化一个新的字符串,用来存储修改之后的结果。
    	如果需要得到修改之后的结果,需要接收这些方法的返回值。
    
    方法描述
    concat(String other)字符串拼接,得到拼接之后的结果
    substring(int fromIndex)从指定下标位开始截取字符串,一直到最后
    substring(int from, int end)截取字符串中的指定部分 [from, end)
    replace(char old, char n)用新的字符替换掉原字符串中所有的指定字符
    replace(String old, String n)用新的字符串替换掉原字符串中的所有指定字符串
    toUpperCase()将字符串中的小写字母转成大写字母返回
    toLowerCase()将字符串中的大写字母转成小写字母返回
    trim()去除一个字符串首尾的空格
    split(String regex)字符串切割
    方法描述
    char charAt(int index)获取指定位的字符
    char[] toCharArray()将一个字符串转成字符数组
    byte[] getBytes()将一个字符串转成字节数组
    int indexOf(char c)查询某一个字符第一次出现的下标
    int lastIndexOf(char c)查询某一个字符最后一次出现的下标
    int indexOf(char c, int fromIndex)查询某一个字符从指定位开始第一次出现的下标
    int lastIndexOf(char c, int from)查询某一个字符从指定位开始最后一次出现的下标
    int indexOf(String s)查询某一个字符串第一次出现的下标
    int lastIndexOf(String s)查询某一个字符串最后一次出现的下标
    int indexOf(String s, int from)查询某一个字符串从指定位开始第一次出现的下标
    int lastIndexOf(String s, int from)查询某一个字符串从指定位开始最后一次出现的下标
    int length()获取一个字符串的长度
    boolean isEmpty()判断一个字符串是否是一个空字符串
    boolean contains(String str)判断一个字符串中是否包含某一个子字符串
    boolean startsWith(String str)判断一个字符串是否以指定的字符串作为开头
    boolean endsWith(String str)判断一个字符串是否以指定的字符串作为结尾
    int compareTo(String str)和另外一个字符串进行大小比较
    int compareToIgnoreCase(String s)和另外一个字符串进行大写比较(忽略大小写)

    字符串大小比较的规则

    1. 依次比较两个字符串中的每一个字符,如果字符相同,则继续向后比较下一个字符。

    2. 直到某一次的字符比较中,可以分出大小。字符串的比较结果,就是这个字符的比较结果。

  3. 静态方法

    方法描述
    format(String formatter, Object… values)按照指定的格式,格式化一个字符串
    join(CharSequence delimiter, CharSequence… e)将字符串拼接起来
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值