博客
关于我
JDK之String源码解读(五)
阅读量:276 次
发布时间:2019-03-01

本文共 1382 字,大约阅读时间需要 4 分钟。

Java String类常用方法解析

1. startsWith(String prefix, int toffset)

说明

该方法用于判断当前字符串是否从指定位置开始以指定的前缀开头。即是否在给定的偏移量位置之后,字符串的前缀与指定的前缀完全一致。

示例

String str = "HelloWorld";boolean starts = str.startsWith("Hello", 3);// 假设str的长度为10,str.substring(3)为"World"// "World"不以"World"开头,故starts为false

特点

  • 参数为prefix和int偏移量toffset。
  • toffset必须在字符串长度内,否则返回false。
  • 如果字符串长度小于prefix长度,直接返回false。

2. startsWith(String prefix)

说明

判断当前字符串是否以指定前缀开头,无需指定偏移量,默认从字符串开头开始判断。

示例

String str = "HelloWorld";boolean starts = str.startsWith("Hello");// 返回true

特点

  • 只需传递前缀作为参数。
  • 如果字符串长度小于前缀长度,返回false。
  • 适用于常见的前缀检查场景。

3. endsWith(String suffix)

说明

判断当前字符串是否以指定后缀结尾。

示例

String str = "HelloWorld";boolean ends = str.endsWith("d");// 返回true

特点

  • 仅需传递后缀作为参数。
  • 后缀可以是单字符,也可以是多字符。
  • 适用于文件扩展名或路径结尾检查。

4. hashCode()

说明

返回当前字符串的哈希码值。String的哈希码计算公式为:s[0] * 31^(n-1) + s[1] * 31^(n-2) + ... + s[n-1]

示例

String str = "abc";int hash = str.hashCode();// hash值为 (a * 31^2) + (b * 31^1) + (c * 31^0)

特点

  • 用于缓存和比较字符串唯一性。
  • 不同字符串可能有相同的哈希码,但概率极低。

5. indexOf(int ch)

说明

查找字符串中第一个等于指定字符的位置。如果字符不在字符串中,返回-1。

示例

String str = "abcde";int index = str.indexOf('c');// 返回2

特点

  • 参数为单个字符int值。
  • 可用于查找字符串中的字符位置。
  • 适用于处理字符替换或删除。

6. lastIndexOf(int ch)

说明

查找字符串中最后一个等于指定字符的位置。如果字符不在字符串中,返回-1。

示例

String str = "cbaabc";int index = str.lastIndexOf('a');// 返回4

特点

  • 与indexOf类似,但查找最后一个字符。
  • 适用于处理逆向查找或删除操作。

总结

以上方法为Java String类中常用的字符串操作接口,涵盖了前缀、后缀、哈希码、字符查找等功能。理解这些方法有助于更高效地处理字符串操作,提升代码的性能和可读性。

转载地址:http://ayrx.baihongyu.com/

你可能感兴趣的文章
Objective-C实现chudnovsky algorithm楚德诺夫斯基算法(附完整源码)
查看>>
Objective-C实现CIC滤波器(附完整源码)
查看>>
Objective-C实现circle sort圆形排序算法(附完整源码)
查看>>
Objective-C实现CircularQueue循环队列算法(附完整源码)
查看>>
Objective-C实现clearBit清除位算法(附完整源码)
查看>>
Objective-C实现climbStairs爬楼梯问题算法(附完整源码)
查看>>
Objective-C实现cocktail shaker sort鸡尾酒排序算法(附完整源码)
查看>>
Objective-C实现cocktailShakerSort鸡尾酒排序算法(附完整源码)
查看>>
Objective-C实现CoinChange硬币兑换问题算法(附完整源码)
查看>>
Objective-C实现collatz sequence考拉兹序列算法(附完整源码)
查看>>
Objective-C实现Collatz 序列算法(附完整源码)
查看>>
Objective-C实现comb sort梳状排序算法(附完整源码)
查看>>
Objective-C实现combinationSum组合和算法(附完整源码)
查看>>
Objective-C实现combinations排列组合算法(附完整源码)
查看>>
Objective-C实现combine With Repetitions结合重复算法(附完整源码)
查看>>
Objective-C实现combine Without Repetitions不重复地结合算法(附完整源码)
查看>>
Objective-C实现conjugate gradient共轭梯度算法(附完整源码)
查看>>
Objective-C实现connected components连通分量算法(附完整源码)
查看>>
Objective-C实现Connected Components连通分量算法(附完整源码)
查看>>
Objective-C实现Convex hull凸包问题算法(附完整源码)
查看>>