Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Bölüm 7 - Diziler İçerik 7.1 Giriş 7.2 Diziler 7.3 Dizileri Tanımlama 7.4 Dizileri Kullanan Örnekler 7.5 Referanslar ve Referans Parametreler 7.6 Dizinin.

Benzer bir sunumlar


... konulu sunumlar: "Bölüm 7 - Diziler İçerik 7.1 Giriş 7.2 Diziler 7.3 Dizileri Tanımlama 7.4 Dizileri Kullanan Örnekler 7.5 Referanslar ve Referans Parametreler 7.6 Dizinin."— Sunum transkripti:

1 Bölüm 7 - Diziler İçerik 7.1 Giriş 7.2 Diziler 7.3 Dizileri Tanımlama 7.4 Dizileri Kullanan Örnekler 7.5 Referanslar ve Referans Parametreler 7.6 Dizinin Metoda Geçişi 7.9 Çok boyutlu Diziler

2 7.1 Giriş Diziler –Veri Yapıları –Aynı veri tipindeki dataların birarada tutulması ilişkilendirme –Dizi ilk tanımlandığında verilen boyut değiştirilemez. Sabit-uzunluklu veri girişleri

3  2003 Prentice Hall, Inc. All rights reserved. Fig. 7.1 | A 12-element array.

4 7.2 Diziler (devam) İndis(index) –Köşeli parantezlerde pozisyon numarası –Pozitif integer yada integer üreten işlem olmalı –İlk elemanın indisi 0 olur a = 5; b = 6; c[ a + b ] += 2; c[ 11 ] ‘deki veriye 2 ekler c[ a + b ] = 78;

5 7.2 Diziler (devam) Dizi c inceleme –c is the dizi ismi –c.length dizi c ’nin uzunluğunu verir. –c 12 elemente sahiptir. ( c[0], c[1], … c[11] ) c[0] değeri –45 tir.

6 7.3 Dizileri Tanımlama ve Oluşturma Dizileri Tanımlama ve Oluşturma –Diziler bellekte yer işgal eden objelerdir. –Anahtar kelime new ile oluşturulur. int c[] = new int[ 12 ]; –Aşağıdaki ifade de aynı işlemi gerçekleştirir. int c[]; // tanımlama c = new int[ 12 ]; // oluşturma Objelerinden de diziler oluşturulabilir. String b[] = new String[ 100 ];

7 7.4 Dizileri Kullanan Örnekler Dizileri tanımlama Dizileri oluşturma Dizilere ilk değer verme Dizi elemanları ile işlem yapma

8 7.4 Dizileri Kullanan Örnekler(Devam.) Dizileri oluşturma ve ilk değer verme –Dizi tanımlama –Dizi oluşturma –Dizi elementlerine ilk değer verme

9  2003 Prentice Hall, Inc. All rights reserved. Outline InitA rray. java Line 8 Declare array as an array of int s Line 10 Create 10 int s for array ; each int is initializ ed to 0 by default Line 15 arr.l ength returns length of array Line 16 arr[c ounte r] returns int associat ed with index in array Progra m output

10 7.4 Dizileri Kullanan Örnekler(Devam.) Diziyi ilk değer vererek oluşturma –Değer listesi kullanma Değerler küme parantezi içine yazılır. ( {} ) Değerler birbirinden virgül ile ayrılır. int n[] = { 10, 20, 30, 40, 50 }; –5 elemanlı dizi oluşturur. –Index değerleri 0, 1, 2, 3, 4 –New anahtar kelimesine ihtiyaç yoktur.

11  2003 Prentice Hall, Inc. All rights reserved. Outline InitA rray. java Line 9 Declare array as an array of int s Line 9 Compil er uses initializ er list to allocate array Progra m output Declare arr as an array of int s Compiler uses initializer list to allocate array

12 7.4 Dizileri Kullanan Örnekler(Devam.) Her bir dizi elemanının değerini hesaplama –10-elemanlı dizinin elemanlarına için çift sayıları atamak

13  2003 Prentice Hall, Inc. All rights reserved. Outline Declare constant variable ARRAY_LENGTH using the final modifier Declare and create array that contains 10 int s Use array index to assign array value

14 7.4 Dizileri Kullanan Örnekler(Devam.) Dizi elemanlarının toplamı –Her dizi elemanı bir değer gösterdiğine göre, o değerleri toplayabiliriz.

15  2003 Prentice Hall, Inc. All rights reserved. Outline SumArr ay.jav a Line 8 Declare array with initializer list Lines Sum all array values Program output

16  2003 Prentice Hall, Inc. All rights reserved. 7.4 Dizileri Kullanan Örnekler(Devam.) Histogram kullanarak dizi değerlerini grafik olarak gösterme –Histogram Her birim değeri yıldız ile gösterme ( * )

17  2003 Prentice Hall, Inc. All rights reserved. Outline

18  2003 Prentice Hall, Inc. All rights reserved. Outline BarC hart. java (2 of 2) Prog ram outp ut

19 7.4 Dizileri Kullanan Örnekler(Devam.) Dizi elemanlarını sayaç olarak kullanma

20  2003 Prentice Hall, Inc. All rights reserved. Outline RollDi e.ja va Line 10 Declare frequ ency as array of 7 int s Lines Genera te 6000 rando m integer s in range 1-6 Line 14 Increm ent frequ ency values at index associa ted with rando m numbe r Progra m output Declare frequency as array of 7 int s Generate 6000 random integers in range 1-6 Increment frequency values at index associated with random number

21 7.4 Dizileri Kullanan Örnekler(Devam.) Araştırma sonuçlarını analiz etmek için dizileri kullanma –40 öğrenci yemeklerin kalitesine not verdiler 1-10 : 1 berbat, 10 mükemmel –40 sonucu tutmak için dizi oluşturma –Sonuçları özetleme

22  2003 Prentice Hall, Inc. All rights reserved. Outline Stude ntPol l.jav a (1 of 2) Lines Declare respon ses as array to store 40 response s Line 12 Declare freque ncy as array of 11 int and ignore the first element Lines For each response, incremen t freque ncy values at index associate d with that response

23  2003 Prentice Hall, Inc. All rights reserved. Outline Studen tPoll. java (2 of 2) Progra m output

24  2003 Prentice Hall, Inc. All rights reserved. 7.4 Dizileri Kullanan Örnekler(Devam.) Bazı dikkat edilmesi gerekli noktalar –Bir diziyi döngü ile dolaşırken İndis hiçbir zaman 0 ın aşağısına düşmemeli İndis dizi uzunluğundan her zaman az olmalı –Yanlış bir indisi referans verdiğiniz zaman Java ArrayIndexOutOfBoundsException oluşturur.

25  2003 Prentice Hall, Inc. All rights reserved. 7.6 Geliştirilmiş for ifadesi Geliştirilmiş for ifadesi –J2SE 5.0 nin yeni özelliği –Sayaç kullanmaksızın dizinin tüm elemanlarını sırayla okumayı sağlar –Yazılım for ( parametre : diziAdı ){ İfadeler }

26  2003 Prentice Hall, Inc. All rights reserved. Outline

27  2003 Prentice Hall, Inc. All rights reserved. 7.6 Enhanced for Statement (Cont.) Aşağıdaki ifadeler aynı işlevi gerçekleştirir for ( int counter = 0; counter < arr.length; counter++ ) total += arr[ counter ]; for ( int num : arr ) total += num; Kullanım –Sadece dizi elemanlarını okumak için kullanılır. –Dizi elemanlarının içeriğini değiştirmek için kullanılamaz. –Dizinin herhangi bir elemanının indisine erişmek için kullanılamaz.

28  2003 Prentice Hall, Inc. All rights reserved. 7.6 Dizilerin Metodlara Geçişi Dizilerin metodlara geçişi –Dizi çağırılırken gönderilecekse isminin yanındaki parantezler kullanılmaz: h dizisi aşağıdaki gibi ise int h = new int[ 24 ]; Metoddan çağırılırken yazDizi( h ); h dizisi yazDizi metoduna gönderilmiş olur

29  2003 Prentice Hall, Inc. All rights reserved. Outline

30  2003 Prentice Hall, Inc. All rights reserved. Outline

31  2003 Prentice Hall, Inc. All rights reserved. 7.5 Referanslar ve Referans Parametreler Metodlara 2 yol ile arguman geçer: –Değer yolu ile Çağırılan metoda değer kopyalanarak geçer. Java da, bütün basit veri tipleri “değer yolu ile” geçiş yapar. –Referans yolu ile Metod, metodu çağıranın verisini değiştirebilir. Java da, her obje referans yolu ile metoda geçer. –Java da, diziler objedir. Bu yüzden, diziler referans yolu ile geçerler.

32  2003 Prentice Hall, Inc. All rights reserved. 7.8 Case Study: Diziler yardımıyla notların analizi NotDefteri sınıfının geliştirilmiş hali Class NotDefteri –Notların analizi –Notların tek tek işlenmesi yerine bir dizi içinde işlenmesi –Tekrarlı işlemlerin önlenmesi

33  2003 Prentice Hall, Inc. All rights reserved. Outline

34  2003 Prentice Hall, Inc. All rights reserved. Outline

35  2003 Prentice Hall, Inc. All rights reserved. Outline

36  2003 Prentice Hall, Inc. All rights reserved. Outline

37  2003 Prentice Hall, Inc. All rights reserved. Outline

38  2003 Prentice Hall, Inc. All rights reserved. Outline

39  2003 Prentice Hall, Inc. All rights reserved. Outline

40 7.9 Çok Boyutlu Diziler Çok Boyutlu Diziler –Satır ve Sutünlardan oluşan Tablolar İki boyutlu dizi İki boyutlu diziyi tanımlama b[2][2] int b[][] = { { 1, 2 }, { 3, 4 } }; –1 ve 2, b[0][0] ve b[0][1] ilk değerleri –3 ve 4, b[1][0] ve b[1][1] ilk değerleri int b[][] = { { 1, 2 }, { 3, 4, 5 } }; –satır 0, 1 ve 2 elementini içerir. –satır 1, 3, 4 ve 5 elementini içerir.

41 7.9 Çok Boyutlu Diziler (devam.) Çok boyutlu dizi oluşturma –Dinamik olarak yer alınabilir. 3 -by- 4 array int b[][]; b = new int[ 3 ][ 4 ]; Satırlar farklı sayıda kolon içerebilirler. int b[][]; b = new int[ 2 ][ ];// 2 satırlık bir dizi b[ 0 ] = new int[ 5 ]; // satır 0 b[ 1 ] = new int[ 3 ]; // satır 1

42 Fig Two-dimensional array with three rows and four columns. a[ 1 ][ 0 ]a[ 1 ][ 1 ]a[ 1 ][ 2 ]a[ 1 ][ 3 ] Satır 0 Satır 1 Satır 2 Sutun 0Sutun 1Sutun 2Sutun 3 Satır index Dizi ismi Sutun index a[ 0 ][ 0 ]a[ 0 ][ 1 ]a[ 0 ][ 2 ]a[ 0 ][ 3 ] a[ 2 ][ 0 ]a[ 2 ][ 1 ]a[ 2 ][ 2 ]a[ 2 ][ 3 ]

43  2003 Prentice Hall, Inc. All rights reserved. Outline

44  2003 Prentice Hall, Inc. All rights reserved. Outline

45  2003 Prentice Hall, Inc. All rights reserved. Outline

46  2003 Prentice Hall, Inc. All rights reserved. Outline

47  2003 Prentice Hall, Inc. All rights reserved. Outline

48  2003 Prentice Hall, Inc. All rights reserved. Outline

49  2003 Prentice Hall, Inc. All rights reserved. Outline

50  2003 Prentice Hall, Inc. All rights reserved. Outline

51  2003 Prentice Hall, Inc. All rights reserved. Outline

52  2003 Prentice Hall, Inc. All rights reserved. Outline


"Bölüm 7 - Diziler İçerik 7.1 Giriş 7.2 Diziler 7.3 Dizileri Tanımlama 7.4 Dizileri Kullanan Örnekler 7.5 Referanslar ve Referans Parametreler 7.6 Dizinin." indir ppt

Benzer bir sunumlar


Google Reklamları