2013-03-04 2 views
-1

Я делаю платформу для обмена сообщениями. Msgdesc - это мое сообщение, но кто-то посылает сообщение, кто-то dont.So ı есть какая-то дата в msgdesc.if. ı havent существуют какие-либо данные. ı ничего не хотят делать, но если я хочу, я хочу видеть также msgdesc с именем + фамилия. Но я получаю java.lang.ArrayIndexOutOfBoundsException: length = 0; index = 1 Может кто-нибудь мне помочь?java.lang.ArrayIndexOutOfBoundsException: length = 0; index = 1

Код:

for (int i = 0; i < midArr.length; i++) { 
    //getting desc from db 
    getMessagedbXML = messagedbInstance.getMessages(mid,midArr[i]);    
    parseXMLDB(getMessagedbXML); 
    UserList=new String[midArr.length]; 
    **//getting error here**  
    if((msgdesc[i].length()==0)) { 
     UserList[i] = nameArr[i]+" "+surnameArr[i]; 
    } else { 
     UserList[i] = nameArr[i]+" "+surnameArr[i]+" "+msgdesc[i]; 
    } 
} 
+0

Какая линия бросает ошибку? Опубликовать всю трассировку стека. – m0skit0

+0

Я получаю ошибку здесь: if ((msgdesc [i] .length() == 0)) { – DuyguK

ответ

3

Изменить его к этому?

if(msgdesc.length() == 0 || msgdesc[i].length() == 0) 

(не знаю, что типа msgdesc есть)

2

мое предположение было бы, что вы используете неправильную переменную (msgdesc).

Вернее, вы используете неправильный тест.

Использование

if (msgdesc.length()!=0 && msgdesc[i].length()!=0)) 

вместо

if (msgdesc[i].length()!=0))