首頁(yè)常見問(wèn)題正文

Java培訓(xùn):字符串角標(biāo)越界異常

更新時(shí)間:2023-12-15 來(lái)源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

  String字符串在獲取某個(gè)字符時(shí)會(huì)用到字符的索引,當(dāng)訪問(wèn)字符串中的字符時(shí),如果字符的索引不存在,則會(huì)發(fā)生StringIndexOutOfBoundsException(字符串角標(biāo)越界異常)。

  當(dāng)我們嘗試訪問(wèn)字符串中不存在的字符位置時(shí),就會(huì)觸發(fā)字符串角標(biāo)的越界異常。在Java中,字符串的角標(biāo)是從0開始的,如果我們嘗試訪問(wèn)超出字符串長(zhǎng)度范圍的角標(biāo),就會(huì)引發(fā)異常。接下來(lái)筆者通過(guò)一個(gè)簡(jiǎn)單的案例來(lái)演示字符串角標(biāo)越界異常:

public class StringIndexOutOfBoundsExample {
    public static void main(String[] args) {
        String str = "Hello, World!";

        try {
            // 嘗試訪問(wèn)超出字符串長(zhǎng)度范圍的角標(biāo)
            char character = str.charAt(20); // 這里的字符串長(zhǎng)度是13,但我們嘗試訪問(wèn)第20個(gè)字符
            System.out.println("Character at index 20: " + character);
        } catch (StringIndexOutOfBoundsException e) {
            System.out.println("String index is out of bounds!");
        }
    }
}

  在這個(gè)例子中,我們創(chuàng)建了一個(gè)包含"Hello, World!"的字符串。然后,我們嘗試訪問(wèn)字符串角標(biāo)為20的字符,但是實(shí)際字符串的長(zhǎng)度只有13個(gè)字符,因此訪問(wèn)第20個(gè)字符超出了范圍,導(dǎo)致了StringIndexOutOfBoundsException的異常被拋出。在異常處理中,會(huì)打印出"String index is out of bounds!"的消息。

  本文版權(quán)歸黑馬程序員Java培訓(xùn)學(xué)院所有,歡迎轉(zhuǎn)載,轉(zhuǎn)載請(qǐng)注明作者出處。謝謝!

  作者:黑馬程序員Java培訓(xùn)學(xué)院

  首發(fā):https://java.itheima.com

分享到:
在線咨詢 我要報(bào)名
和我們?cè)诰€交談!