2012-02-26 2 views
0

Im은 Java에서 게임 플러그인을 만들고 Ive는 분할 기능에 문제가 있습니다. 라인분할 반환 null

index = 0; 
     int leng = a.length; 
     while(index != leng){ 
      arr = a[index].split("|"); //this is line 158 
      if(arr[1] == "blue"){ 
      blues[index]= arr[1]; 
      }else{ 
       reds[index] = arr[1]; 
      } 
      index++; 
     } 

임지고 NullPointerException가 158
변수 편곡은 빈 배열입니다.
인쇄 변수 "a"는 null이 아닌지 확인합니다.
"a"는 다음과 같습니다. 100 58 -9 | 빨간색.
도와 주시겠습니까?

답변

4

split 그래서 대신 arr = a[index].split("|");의, 정규 표현식을 수신 할 감사? 배열 a은 비워 둘 수 없습니다. 그렇지 않으면 while 루프를 입력하지 않습니다.

+0

아, 잘못된 튜토리얼을 가져 왔고, "-"가 delimeter로 설정되었습니다. 자바는 전혀 좋지 않습니다. 감사합니다 –

+0

또한 문자열 비교는'=='이 아닌'equals' 또는'equalsIgnoreCase'를 사용하여 이루어집니다. – MByD

0

arr = a[index].split("\\|"); 당신은 어떤 a[index] 자체가 null가 아닌 것이 확실하면

+0

아니요, a가 null이 아님을 확인하십시오 –

+0

전체 배열 'a'가 아닙니다. 배열의 요소 중 하나 인'a [index] '를 의미합니다. – Bernard