Bir diziyi şu şekilde başlatıyorum:
public class Array {
int data[] = new int[10];
/** Creates a new instance of Array */
public Array() {
data[10] = {10,20,30,40,50,60,71,80,90,91};
}
}
NetBeans bu satırda bir hataya işaret ediyor:
data[10] = {10,20,30,40,50,60,71,80,90,91};
Bu sorunu nasıl çözebilirim?
data[10] = {10,20,30,40,50,60,71,80,90,91};
Yukarıdaki doğru değil (sözdizimi hatası). Bu, sadece bir eleman tutabilen data[10]
'a bir dizi atadığınız anlamına gelir.
Bir diziyi başlatmak istiyorsanız, Array Initializer kullanmayı deneyin:
int[] data = {10,20,30,40,50,60,71,80,90,91};
// or
int[] data;
data = new int[] {10,20,30,40,50,60,71,80,90,91};
İki beyan arasındaki farka dikkat edin. Bildirilmiş bir değişkene yeni bir dizi atarken, new
kullanılmalıdır.
Sözdizimini düzeltseniz bile, data[10]
'a erişim hala yanlıştır (Java'da dizilerin indeksi 0 tabanlı olduğu için yalnızca data[0]
'dan data[9]
'a erişebilirsiniz). data[10]`a erişmek bir ArrayIndexOutOfBoundsException fırlatacaktır.
Try data = new int[] {10,20,30,40,50,60,71,80,90,91 };
dizinin 10. elemanını diziye ayarlamaya çalışıyorsunuz try
data = new int[] {10,20,30,40,50,60,71,80,90,91};
FTFY