Mobil Programlama

iOS

DERS PROGRAMI
iOS 101 Ders Programı

Koleksiyon Tipleri (Collection Types)

Lisans: Creative Commons 11.12.2020 tarihinde güncellendi
Bakabileceğiniz Etiketler: Eğitmen: Geleceği Yazanlar Ekibi

KOLEKSİYON TİPLERİ (COLLECTION TYPES)

 

Swift’te iki farklı koleksiyon tipi mevcuttur:

I)Diziler (Arrays)

II)Sözlükler (Dictionaries)

 

DİZİLER (ARRAYS)

 

Dizi, aynı tipteki çok sayıda değeri bir liste içinde tutan yapılardır. Aynı veri birden çok tekrar edebilir. Swift’in dizileri, Objective C’nin, NSArray ve NSMutableArray sınıflarından farklı yapıdadır. Objective C dizilerinde dizi elemanı herhangi bir tipte nesne olabilirken Swift dizilerinde yukarıda belirtildiği gibi aynı tipte veriler yer alır.

Örneğin, bir dizi Double tipte tanımlanmış ise bu diziye Int türü bir veri eklenemez.

 

DİZİ: TANIM

Dizi, bilgisayar belleğinde aynı isim altında genellikle aynı tipten çok sayıda veriyi bir arada saklayan veri yapısıdır. Aşağıda, x adlı bir dizinin mantıksal görünümü verilmiştir:

 

 

Dizinin bir adı ve dizi içersindeki bir elemanın dizinin kaçıncı elemanı olduğunu belirten bir indisi (subscript, index) mevcuttur. Örneğin, yukardaki x adlı dizi için

x[3] ifadesi bu dizinin 3 numaralı elemanını yani 22

değerini göstermektedir. Dizinin indisi Objective C dilinde daima köşeli parantez ile belirlenir:

 

x [3]
Dizinin Adı Dizinin indisi

 

Swift dilinde bir dizinin ilk elemanının indisi daima 0’dır; son elemanın indisi ise diziye ayrılan yer sayısının 1 eksiğine eşittir. Yukarıdaki x dizisinin 6 elemanı vardır; ilk elemanının indisi 0 ve son elemanının indisi de 5’tir.

 

DİZİNİ TANIMLANMASI

 

5 elemanlı ve tam sayı elemanlara sahip bir dizi Swift’te;

var x : Int[] = [5,7,9,-2,11]

şeklinde tanımlanır.

 

Aşağıdaki Swift programı 5 elemanlı tam sayılardan oluşan bir dizinin elemanlarını yazdırmakta ve toplamlarını da hesaplamakta ve yazdırmaktadır:

var x : [Int] = [5,7,9,-2,11]

var s=0

for i in 0...5-1

{print("INDIS...\(i)...ELEMAN..\(x[i])")

s = s + x[i]

}

print("TOPLAM=\(s)")

 

PROGRAMIN ÇIKTISI:

INDIS...0...ELEMAN..5

INDIS...1...ELEMAN..7

INDIS...2...ELEMAN..9

INDIS...3...ELEMAN..-2

INDIS...4...ELEMAN..11

TOPLAM=30

Program ended with exit code: 0

 

DİZİ ELEMANLARINA ERİŞİM

 

Swift’te, bir dizinin elemanlarına iki farklı şekilde erişebilirsiniz:

I.Yukardaki örnekte gördüğünüz gibi, dizi indisini kullanmak:x[0],x[1],…x[5] gibi

II.Dizilerle ilişkili çeşitli metotları kullanmak

 

DİZİLERLE İLİŞKİLİ METOTLAR

 

isEmpty METODU

 

Bir dizi boş ise true değilse false değerini gönderir.

 

ÖRNEK:

var a:[Int]=[]

if a.isEmpty {print("DİZİ BOŞTUR...")} else {print("DİZİ DOLUDUR...")}

a.append(4)

a.append(7)

a.append(11)

if a.isEmpty {print("DİZİ BOŞTUR...")} else {print("DİZİ DOLUDUR...")}

print("a...DİZİSİ..\(a)")

 

PROGRAMIN ÇIKTISI

DİZİ BOŞTUR...

DİZİ DOLUDUR...

a...DİZİSİ..[4, 7, 11]

 

 

APPEND METODU

 

Mevcut bir dizinin sonuna belirtilen elemanı ekler.

a.append(4)

a.append(7)

a.append(11)

 

örneklerinde, başlangıçta dizi boşsa a[0]=4, a[1]=7, a[2]=11 olacaktır. Yukarıdaki örnek programda kullanılmıştır.

 

+= sembolü ile birden çok eleman eklenebilir:

var a:[Int]=[]

if a.isEmpty {print("DİZİ BOŞTUR...")} else {print("DİZİ DOLUDUR...")}

a+=[12,22,67,65,89,111]

if a.isEmpty {print("DİZİ BOŞTUR...")} else {print("DİZİ DOLUDUR...")}

print("a...DİZİSİ..\(a)")

 

Programın çıktısı:

DİZİ BOŞTUR...

DİZİ DOLUDUR...

a...DİZİSİ..[12, 22, 67, 65, 89, 111]