02.03.2015 Views

Java Nedir

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

şeklinde [ ] ve bir indeks numarası kullanılarak atama yapılabilir.<br />

NOT: Burada dikkat edilmesi gereken şey, dizimizin uzunluğundan daha fazla eleman ataması yapmamaktır. Bu<br />

örneğimize göre sayilar dizisinin son elemanına sayilar[9] ile erişebiliriz. Sayilar[10] = 23; hatalı bir atama<br />

olacaktır çünkü 10 nolu indekste 11. eleman olur. Ancak dizimiz sadece 10 eleman tutacak alan tahsis edilmişti!<br />

Şimdi kullanıcıdan gelecek olan isimleri bir dizide saklayan bir program yazalım:<br />

/**** Kayit.java ****/<br />

1 import javax.swing.*;<br />

2<br />

3 public class Kayit {<br />

4 public static void main(String arg[]){<br />

5<br />

6 String kayit_str = JOptionPane.showInputDialog(null, "Kac tane kayit<br />

gireceksiniz:");<br />

7 String cikisMesaji = "Hernagi bir anda cikmak icin "<br />

8 int kayit = Integer.parseInt(kayit_str);<br />

9<br />

10 String isimler[] = new String[kayit];<br />

11 for(int i = 0; i < isimler.length; i++) {<br />

12 int sayi = i+1;<br />

13 String giris = JOptionPane.showInputDialog(null, sayi + ". kaydi<br />

giriniz:");<br />

14 if(giris.equals(“X”))<br />

15 break;<br />

16 else<br />

17 isimler[i] = giris;<br />

18 }<br />

19<br />

20 String mesaj = "isim Listesi\n********";<br />

21<br />

22 for(int i = 0; i < isimler.length; i++) {<br />

23 if(isimler[i] != null)<br />

24 mesaj += "\n"+i+" --> "+isimler[i];<br />

25 }<br />

26<br />

27 JOptionPane.showMessageDialog(null, mesaj);<br />

28 System.exit(0);<br />

29 }<br />

30 }<br />

/******************/<br />

Bu programda önce kullanıcının kaç kayıt gireceği sorulmaktadır. Çünkü dizilerin uzunluğu sabittir ve önceden bir<br />

defa yer ayrıldığından bu uzunluk bilinmelidir. Uzunluğu değişen dizileri için başka algoritmik çözümler vardır ancak<br />

değişmeyen şer bir dizinin uzunluğu sabittir ve sonradan uzatılıp kısaltılamaz.<br />

Bu örnekte kullanıcının gireceği kayıt kadar yer tahsisati yapıldıktan sonra for döngüsü ile her adımda girilecek olan<br />

kayıt istenmekte ve diziye atılmaktadır. Eğer kullanıcı başta belirlediği kadar kayıt girmekten vazgeçip o anda işlemi<br />

sonlandırmak isterse isim yerine X girişi yapabilecektir. Programda her giriş yapıldıktan sonra bu değerin X olup<br />

olmadığına bakılmaktadır (14. satır). Eğer giriş X olursa döngü break ile sonladırılır (15. satır). Değilse giriş diziye<br />

yazılır ve döngü devam eder (16. satır).<br />

NOT: String türünde diziler için tahsis edilen yerlerin içine birşey doldurulmaz ise, bu yerler otomatik olarak null<br />

denilen özel bir değerle doldurulur. null değeri , “ ” gibi boş bir String ya da 0 değildir. Kendi başına anlamlıdır.<br />

Bu döngü bittikten sonra yeni bir for döngüsü ile de diziden her kayıt tek tek okunmakta (22. satır) ve “mesaj”<br />

adındaki String değişkeni içerisine atılmaktadır (24. satır). Daha sonra bu mesaj isimli değişken ekrana yazılacaktır<br />

32

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!