나는 응용 프로그램을 최적화 및 향상된 루프에 루프 내 변경을 원했다 :향상된 for 루프를 사용하여 배열을 초기화하는 방법은 무엇입니까?
for (int m = 1;m < MAX_BEREN;m++)
{
Wasberen[m] = new Wasbeer();
Wasberen[m].YYY = r.nextInt(SchermY - 28);
}
에 :에서
, 내가 NullPointerException이 얻을
for (Wasbeer a : Wasberen)
{
if (a!=null)
{
a = new Wasbeer();
a.YYY = r.nextInt(SchermY - 28);
}
}
그것은 아마 나던 알고 있기 때문에 얼마나 'beren' 배열에있을 수 있지만 위의 루프 (MAX_BEREN = 11) 같은 관리하는 방법을 잘 모르겠습니다.
그래서 'for'로 초기화하고 나중 단계에서 향상된 루프를 반복합니까? 초기화 후에 'wasberen'이 이미 존재하므로 – Mars
Wasipper no-arg 생성자 또는 'r'도 null 참조 인 경우 NullPointerException을 throw 할 수 있습니다. 예외에 대한 스택 추적은 범인을 식별해야합니다. –