當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。