java中比较重要但不常用的方法

charAt

返回字符串中 index 位置的单个字符(char 类型)

public char charAt(int index)
String s = "Hello";
char c = s.charAt(1);  // 'e'

toCharArray

返回包含字符串所有字符的新建 char[] 数组

public char[] toCharArray()
String s = "Hello";
char[] chars = s.toCharArray();  // ['H','e','l','l','o']
chars[0] = 'h';  // 修改数组不影响原字符串

index

  • 作用:检查 prefix 是否是 strs[i] 的前缀

  • 返回值

    • 如果 prefix 是 strs[i] 的开头部分,返回 0

    • 如果不是前缀,返回 -1 或其他位置索引

strs[i].indexOf(prefix) != 0
"flower".indexOf("flow")  // 返回 0(是前缀)
"flower".indexOf("low")   // 返回 2(不是前缀)
"flower".indexOf("abc")   // 返回 -1(不存在)

subtring

  • substring(int beginIndex, int endIndex)

    • beginIndex:起始索引(包含)

    • endIndex:结束索引(不包含)

  • substring(int beginIndex):从指定索引到字符串末尾

prefix = prefix.substring(0, prefix.length() - 1);
String s = "flower";
s.substring(0, 4);  // "flow"
s.substring(0, s.length()-1); // "flowe"

split

(1) 按单个字符分割
String a = "Hello,World";
String[] parts = a.split(",");  // ["Hello", "World"]
(2) 按多个分隔符分割

使用正则表达式中的 或运算符 |

String a = "Hello,World;Java";
String[] parts = a.split("[,;]");  // ["Hello", "World", "Java"]
(3) 按空白字符分割
String a = "Hello   World\nJava";
String[] parts = a.split("\\s+");  // ["Hello", "World", "Java"]

String.valueOf

基本功能:

将单个字符或字符数组转换为字符串。

语法

public static String valueOf(char c)         // 转换单个字符
public static String valueOf(char[] data)    // 转换整个字符数组
public static String valueOf(char[] data, int offset, int count)  // 转换部分字符数组

示例

char c = 'A';
String str1 = String.valueOf(c);  // "A"

char[] charArray = {'H', 'e', 'l', 'l', 'o'};
String str2 = String.valueOf(charArray);  // "Hello"
String str3 = String.valueOf(charArray, 1, 3);  // "ell"(从索引1开始,取3个字符)

String.copyValueOf()

String.copyValueOf() 是一个静态方法,用于将字符数组(char[])的全部或部分元素转换为字符串。

复制整个字符数组

public static String copyValueOf(char[] data)
  • 作用:将字符数组 data 中的所有字符转换为字符串。

 复制部分字符数组

public static String copyValueOf(char[] data, int offset, int count)
  • 参数
    • data:源字符数组。
    • offset:开始复制的起始索引(从 0 开始)。
    • count:要复制的字符数量。
  • 作用:从 data 数组的 offset 位置开始,复制 count 个字符到新字符串中。

示例代码:

public class CopyValueOfExample {
    public static void main(String[] args) {
        char[] chars = {'H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd'};

        // 复制整个字符数组
        String fullString = String.copyValueOf(chars);
        System.out.println(fullString); // 输出: Hello World

        // 复制部分字符数组
        String partialString = String.copyValueOf(chars, 6, 5);
        System.out.println(partialString); // 输出: World
    }
}

 与 String.valueOf() 的区别

String.copyValueOf() 和 String.valueOf(char[]) 的功能几乎完全相同,都用于将字符数组转换为字符串。实际上,copyValueOf() 的底层实现就是调用 String.valueOf()。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小小懒懒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值