📜  Java String getChars() 与示例(1)

📅  最后修改于: 2023-12-03 15:15:57.741000             🧑  作者: Mango

Java String getChars() 方法

在 Java 中,String 类是不可变类,也就是说一旦一个字符串对象创建完成,就无法更改它的内容。因此,我们需要使用 String 类的方法来访问和操作字符串。

其中 String getChars() 方法可以用来从字符串中提取指定位置的字符序列,并将其存储到指定的字符数组中。它的语法结构如下:

public void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)

参数说明:

  • srcBegin:要获取的字符序列的起始索引。
  • srcEnd:要获取的字符序列的终止索引(不包含在序列中)。
  • dst:目标字符数组,用于存储字符序列。
  • dstBegin:目标字符数组的起始索引,从该索引开始将字符序列复制到数组中。

该方法没有返回值,只是将指定的字符序列复制到目标数组中。

下面是一个示例:

public class GetCharsExample {
    public static void main(String[] args) {
        String str = "Hello, world!";
        int beginIndex = 7;
        int endIndex = 12;
        char[] charArray = new char[5];

        // 从字符串中获取指定索引范围的字符序列,并将其存储到目标字符数组中
        str.getChars(beginIndex, endIndex, charArray, 0);

        // 输出目标字符数组的内容
        for (char ch : charArray) {
            System.out.print(ch); // 输出 world
        }
    }
}

在示例中,我们首先声明了一个字符串对象 str 和一个整数型变量 beginIndexendIndex,代表着要获取字符序列的起始索引和终止索引。然后创建了一个长度为 5 的字符数组 charArray,用于存储从字符串中获取的字符序列。最后,我们调用了 str.getChars(beginIndex, endIndex, charArray, 0) 方法,将指定索引范围的字符序列存储到目标字符数组中,并通过循环遍历目标字符数组,打印其中的内容。

注意事项
  • 在调用该方法之前,需要确保目标字符数组的容量至少等于要获取的字符序列的长度。
  • 要获取的字符序列的起始索引和终止索引必须满足以下条件:0 <= srcBegin <= srcEnd <= String.length()。
  • 如果起始索引和终止索引的范围超出了字符串的长度,或者 dstBegin + 要获取的字符序列的长度超出了目标字符数组的长度,则会抛出异常 IndexOutOfBoundsException。