第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

StringIndexOutOfBoundsException:字符串索引超出范圍:

StringIndexOutOfBoundsException:字符串索引超出范圍:

慕村225694 2019-04-20 18:19:06
我不斷得到字符串索引,我不知道問題出在哪里String username, userDisplayName;while (commentBody.contains("[~")) {     username = commentBody.substring(commentBody.indexOf("[~")+2, commentBody.indexOf("]"));     try {         userDisplayName = connector.getUserByUsername(username).get().getDisplayName();         commentBody = commentBody.replace("[~" + username + "]", userDisplayName);     } catch (InterruptedException e) {         // TODO Auto-generated catch block         e.printStackTrace();     } catch (ExecutionException e) {         // TODO Auto-generated catch block         e.printStackTrace();     }}
查看完整描述

3 回答

?
ibeautiful

TA貢獻(xiàn)1993條經(jīng)驗 獲得超6個贊

字符串索引超出范圍:-30異常


表示您曾經(jīng)substring()在字符串中返回一個子字符串,長度為29個字符長,第二個參數(shù)substring()為負(fù)數(shù)。
所以你的字符串不包含char ']'。
你必須做的是while像這樣擴(kuò)展條件:

while (commentBody.contains("[~") && commentBody.contains("]")) {
    ...........}

另外,為了覆蓋']'字符串中存在但位置在之前的其他情況"[~",您需要在獲得子字符串之前檢查char的']'索引是否小于字符串的"[~"索引。


查看完整回答
反對 回復(fù) 2019-05-15
?
桃花長相依

TA貢獻(xiàn)1860條經(jīng)驗 獲得超8個贊

檢查您的commentBody.indexOf("[~")+2索引是否等于或大于字符串的長度。


int startIndex = commentBody.indexOf("[~")+2;

int endIndex = commentBody.indexOf("]");


if(startIndex <= commentBody.length() && startIndex <= endIndex)

   username = commentBody.substring(startIndex, endIndex);


查看完整回答
反對 回復(fù) 2019-05-15
  • 3 回答
  • 0 關(guān)注
  • 1451 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號