Swift Programlama – Ders 5

bay404

Uzman üye
1 Mar 2020
1,672
42
Antalya



GyUig8.gif



Merhaba sevgili Turk Hack Team Ailesi, bu konumda Swift kodlamaya devam edeceğiz. Umarım herkes adına yararlı ve güzel bir konu olacaktır.


tJoGV2.gif



************************************

Koleksiyonlar

Swift programlama dili iki farklı koleksiyon tipi olan diziler ve dictionary‘leri destekler. Diziler aynı tipten oluşan verileri sıralı bir biçimde tutmak için kullanılır. Dictionary olarak ifade ettiğimiz yapı ise sıralı olmayan fakat key-value konsepti ile saklanan verileri tutmak için kullanılır.

************************************

Dictionary

dic.png


Dictionary, ayni tipde birden çok veriyi key-value şeklinde tutar. Her değere ait unique bir key bulunur. Dictionary yapısında dizilerde olduğu gibi bir sıralama bulunmaz.

Kod:
var people: [String: String] = ["teacher" : "Ahmet Can", "student" : "Mehmet Can", "director" : "Melek Can"]
// burada içerisinde 3 tane key-value çifti olan bir dictionary tanımladık.

************************************

>> Dictionary İçerisindeki Elemanların Sayısına Erişme;

Kod:
var people: [String: String] = ["teacher" : "Ahmet Can", "student" : "Mehmet Can", "director" : "Melek Can"]
 
println ("people dictionary'si içerisinde (people.count) eleman vardır.")
//konsola "people dictionary'si içerisinde 3 eleman vardır" yazdıracaktır.

************************************

>> Dictionary’nin Boş Olup Olmadığını Öğrenme;

Kod:
var people: [String: String] = ["teacher" : "Ahmet Can", "student" : "Mehmet Can", "director" : "Melek Can"]
 
if people.isEmpty {
   println("people dictionary'si boştur.")
} else {
   println("people dictionary'si doludur.")
}
 
//konsola "people dictionary'si doludur." yazdıracaktır.

************************************

>> Dictionary’e Yeni Eleman Ekleme;

Kod:
var team: [String: String] = ["goalkeeper" : "Muslera", "defance" : "Ramos", "middfielder" : "Zidane"]
//team dictionary'sinde 3 eleman var
 
team["striker"] = "Ronaldo"
//team dictionary'sinde 4 eleman oldu.
 
team["striker"] = "Messi"
//team dictionary'sinde hala 4 eleman var, fakat "striker" key'inin değeri değişti.

************************************

>> updateValue(forKey:) Metodu;

Dictionary’deki güncellediğimiz verinin eski değerini alabiliriz.

Kod:
var team: [String: String] = ["goalkeeper" : "Muslera", "defance" : "Ramos", "middfielder" : "Zidane"]
 
let oldValueforDefance = “team.updateValue("Ferdinand", forKey: "defance") {
    println("defans'ın eski değeri (oldValue).")
}
// konsola "defans'ın eski değeri Ramos” yazdıracaktır.
 
 
if let goalkeeperName = team["goalkeeper"] {
    println("kalecinin ismi :  (goalkeeperName).")
} else {
    println("kalecinin ismi dictinary içerisinde yok")
}
// konsola "kalecinin ismi Muslera" yazdıracaktır.

************************************

>> Dictionary İçerisindeki Elemanları Döngü İçerisinde Döndürmek;

Kod:
var team: [String: String] = ["goalkeeper" : "Muslera", "defance" : "Ramos", "middfielder" : "Zidane"]
 
 
for (position, name) in team {
    println("(position): (name)")
}
// goalkeeper: Muslera
// defance: Ramos
// middfielder: Zidane
 
 
for position in team.keys {
    println("position: (position)")
}
// position: goalkeeper
// position: defance
// position: middfielder
 
 
for fName in team.values {
    println("name: (fName)")
}
// name: Muslera
// name: Ramos
// name: Zidane

************************************

>> Dictionary İçerisindeki Elemanları Diziye Atamak;

Kod:
var team: [String: String] = ["goalkeeper" : "Muslera", "defance" : "Ramos", "middfielder" : "Zidane"]
 
let positions = [String](team.keys)
// positions dizisindeki elemanlar ["goalkeeper", "defance", "middfielder"]
 
let names = [String](team.values)
// names dizisindeki elemanlar ["Muslera", "Ramos", "Zidane"]

************************************

>> Boş Dictionary Oluşturma;

Kod:
var nums = [Int: String]()
// nums boş bir dictionary, key-value çiftinin tipi [Int: String]
 
nums[16] = "sixteen"
// nums 1 tane key-value çiftine sahip
nums = [:]
// nums  şu anda tekrar boş bir dictionary oldu, key-value çiftinin tipi [Int: String]


************************************

For Döngüsü

Swift programlama dili içerisinde döngüleri öğrenmeye başlıyoruz. Öğreneceğimiz ilk döngü for döngüsü olacak. Swift programlama dilinde 2 çeşit for döngüsü mevcut, bunlar:

>> For-In Döngüsü
>> For Döngüsü

For-In Döngüsü

For in döngüsü koleksiyon elemanlarını yani örnek verecek olursak belirli bir aralıktaki sayıları, bir dizi yada dictionary içerisindeki elemanları, bir string içerisindeki karakterleri döngü içerisinde kullanabilmemizi sağlar.

Örnek 1;
Kod:
for index in 1...5 {
    println("(index) kere 5 = (index * 5)")
}
// 1 kere 5 = 5
// 2 kere 5 = 10
// 3 kere 5 = 15
// 4 kere 5 = 20
// 5 kere 5 = 25

Örnek 2;
Kod:
let base = 3
let power = 10
var answer = 1
for _ in 1...power {
    answer *= base
}
println("(base) üzeri (power) sayısının değeri: (answer)")
// konsola "3 üzeri 10 sayısının değeri: 59049” yazdırır

Örnek 3;
Kod:
let names = ["Muhammed", "İlkay", "Gökhan", "Murat"]
for name in names {
    println("Merhaba, (name)!")
}
// Merhaba, Muhammed!
// Merhaba, İlkay!
// Merhaba, Gökhan!
// Merhaba, Murat!

Örnek 4;
Kod:
let numberOfLegs = ["orumcek": 8, "karınca": 6, "kedi": 4]
for (animalName, legCount) in numberOfLegs {
    println("(animalName) (legCount) bacağa sahiptir")
}
// orumcek 8 bacağa sahiptir
// karınca 4 bacağa sahiptir
// kedi have 6 bacağa sahiptir

Örnek 5;
Kod:
for character in "KOD5" {
println(character)
}
// K
// O
// D
// 5

************************************

For Döngüsü

Basit for döngüsüdür. Genel formatı şu şekildedir :

Kod:
for var index = 0; index < 3; ++index {
    println("index : (index)")
}
// index : 0
// index : 1
// index : 2




TRoCYy.png


Geri Dönüş ve Yanıtlarınız Bekliyorum. Benim için önemliler. :))


Konum bu kadardı arkadaşlar. Hepinize vaktinizi ayırdığınız, okumaya uygun görüp de okuduğunuz için teşekkür ediyorum. Saygılarla iyi forumlar.. :mml

//Alıntı İçermektedir!


Bay 404 Web Coder


 
Son düzenleme:
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.