当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java StringBuffer getChars()用法及代码示例


StringBuffer类的getChars(int srcBegin,int srcEnd,char [] dst,int dstBegin)方法将从index:srcBegin到index:srcEnd-1的字符从实际序列复制到作为参数传递给函数的char数组中。

  • 字符被复制到char dst []数组中,从索引:dstBegin开始,到索引:dstbegin +(srcEnd-srcBegin)– 1结束。
  • 要复制到数组的第一个字符位于索引srcBegin,而要复制的最后一个字符位于索引srcEnd-1。
  • 要复制的字符总数等于srcEnd-srcBegin。

用法:

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

参数:此方法采用四个参数:


  • srcBegin:int值表示要在其上开始复制的索引。
  • srcEnd:int值表示要在其上停止复制的索引。
  • dst:char数组表示要将数据复制到的数组。
  • dstBegin:int值表示开始粘贴复制数据的dest数组的索引。

返回值:此方法不返回任何内容。

异常:在以下情况下,此方法将引发StringIndexOutOfBoundsException:

  • srcBegin
  • dstBegin
  • srcBegin> srcEnd
  • srcEnd> this.length()
  • dstBegin + srcEnd-srcBegin> dst.length

下面的程序演示StringBuffer类的getChars()方法:

示例1:

// Java program to demonstrate 
// the getChars() Method. 
  
import java.util.*; 
  
class GFG { 
    public static void main(String[] args) 
    { 
  
        // create a StringBuffer object 
        // with a String pass as parameter 
        StringBuffer 
            str 
            = new StringBuffer("Geeks For Geeks"); 
  
        // print string 
        System.out.println("String = "
                           + str.toString()); 
  
        // create a char Array 
        char[] array = new char[15]; 
  
        // initialize all character to .(dot). 
        Arrays.fill(array, '.'); 
  
        // get char from index 0 to 9 
        // and store in array start index 3 
        str.getChars(0, 9, array, 1); 
  
        // print char array after operation 
        System.out.print("char array contains : "); 
  
        for (int i = 0; i < array.length; i++) { 
            System.out.print(array[i] + " "); 
        } 
    } 
}
输出:
String = Geeks For Geeks
char array contains : . G e e k s   F o r . . . . .

示例2:演示StringIndexOutOfBoundsException。

// Java program to demonstrate 
// exception thrown by the getChars() Method. 
  
import java.util.*; 
  
class GFG { 
    public static void main(String[] args) 
    { 
  
        // create a StringBuffer object 
        // with a String pass as parameter 
        StringBuffer 
            str 
            = new StringBuffer("Contribute Geeks"); 
  
        // create a char Array 
        char[] array = new char[10]; 
  
        // initialize all character to $(dollar sign). 
        Arrays.fill(array, '$'); 
  
        try { 
  
            // if start is greater then end 
            str.getChars(2, 1, array, 0); 
        } 
  
        catch (Exception e) { 
            System.out.println("Exception: " + e); 
        } 
    } 
}
输出:
Exception: java.lang.StringIndexOutOfBoundsException: srcBegin > srcEnd

参考文献:
https://docs.oracle.com/javase/10/docs/api/java/lang/StringBuffer.html#getChars(int, int, char%5B%5D, int)



相关用法


注:本文由纯净天空筛选整理自AmanSingh2210大神的英文原创作品 StringBuffer getChars() method in Java with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。