Swift - Struktur
Swift 4 menyediakan blok bangunan yang fleksibel dalam memanfaatkan konstruksi sebagai Struktur. Dengan menggunakan struktur ini sekali dapat mendefinisikan metode dan properti konstruksi.
Tidak seperti C dan Objective C
Struktur tidak memerlukan file dan antarmuka implementasi.
Struktur memungkinkan kita membuat satu file dan memperluas antarmukanya secara otomatis ke blok lain.
Dalam Struktur, nilai variabel disalin dan diteruskan dalam kode berikutnya dengan mengembalikan salinan nilai lama sehingga nilai tidak dapat diubah.
Sintaksis
Structures are defined with a 'Struct' Keyword.
struct nameStruct {
Definition 1
Definition 2
---
Definition N
}
Definisi Struktur
Pertimbangkan misalnya, misalkan kita harus mengakses catatan siswa yang berisi nilai tiga mata pelajaran dan untuk mencari tahu total tiga mata pelajaran. Di sini markStruct digunakan untuk menginisialisasi struktur dengan tiga tanda sebagai datatype 'Int'.
struct MarkStruct {
var mark1: Int
var mark2: Int
var mark3: Int
}
Mengakses Struktur dan Properti-nya
Anggota struktur diakses dengan nama strukturnya. Contoh struktur ini diinisialisasi oleh kata kunci 'let'.
struct studentMarks {
var mark1 = 100
var mark2 = 200
var mark3 = 300
}
let marks = studentMarks()
print("Mark1 is \(marks.mark1)")
print("Mark2 is \(marks.mark2)")
print("Mark3 is \(marks.mark3)")
Ketika kami menjalankan program di atas menggunakan playground, kami mendapatkan hasil sebagai berikut -
Mark1 is 100
Mark2 is 200
Mark3 is 300
Nilai siswa diakses oleh nama struktur 'studentMarks'. Anggota struktur diinisialisasi sebagai mark1, mark2, mark3 dengan nilai tipe integer. Kemudian struktur studentMarks () diteruskan ke 'marks' dengan kata kunci 'let'. Selanjutnya 'tanda' akan berisi nilai anggota struktur. Sekarang nilai dicetak dengan mengakses nilai anggota struktur dengan '.' dengan nama yang diinisialisasi.
struct MarksStruct {
var mark: Int
init(mark: Int) {
self.mark = mark
}
}
var aStruct = MarksStruct(mark: 98)
var bStruct = aStruct // aStruct and bStruct are two structs with the same value!
bStruct.mark = 97
print(aStruct.mark) // 98
print(bStruct.mark) // 97
Ketika kami menjalankan program di atas menggunakan playground, kami mendapatkan hasil sebagai berikut -
98
97
Praktik Penggunaan Terbaik dari Struktur
Bahasa Swift 4 menyediakan fungsionalitas untuk mendefinisikan struktur sebagai tipe data khusus untuk membangun blok fungsi. Contoh struktur diteruskan nilainya ke blok yang ditentukan untuk manipulasi lebih lanjut.
Perlu memiliki struktur
Untuk merangkum nilai data sederhana.
Untuk menyalin data yang dienkapsulasi dan properti yang terkait dengan 'nilai' daripada dengan 'referensi'.
Struktur untuk 'Salin' dan 'Referensi'.
Struktur di Swift 4 meneruskan anggotanya dengan nilai-nilai mereka, bukan dengan referensinya.
struct markStruct {
var mark1: Int
var mark2: Int
var mark3: Int
init(mark1: Int, mark2: Int, mark3: Int) {
self.mark1 = mark1
self.mark2 = mark2
self.mark3 = mark3
}
}
var marks = markStruct(mark1: 98, mark2: 96, mark3:100)
print(marks.mark1)
print(marks.mark2)
print(marks.mark3)
Ketika kami menjalankan program di atas menggunakan playground, kami mendapatkan hasil sebagai berikut -
98
96
100
Contoh lain
struct markStruct {
var mark1: Int
var mark2: Int
var mark3: Int
init(mark1: Int, mark2: Int, mark3: Int) {
self.mark1 = mark1
self.mark2 = mark2
self.mark3 = mark3
}
}
var fail = markStruct(mark1: 34, mark2: 42, mark3: 13)
print(fail.mark1)
print(fail.mark2)
print(fail.mark3)
Ketika kami menjalankan program di atas menggunakan playground, kami mendapatkan hasil sebagai berikut -
34
42
13
Struktur 'markStruct' didefinisikan pertama kali dengan anggotanya mark1, mark2 dan mark3. Sekarang variabel kelas anggota diinisialisasi untuk menampung nilai integer. Kemudian salinan anggota struktur dibuat dengan Kata Kunci 'sendiri'. Setelah salinan anggota struktur dibuat, blok struktur dengan tanda parameternya diteruskan ke variabel 'marks' yang sekarang akan menampung nilai siswa. Kemudian tanda akan dicetak sebagai 98, 96, 100. Langkah selanjutnya untuk anggota struktur yang sama, contoh lain bernama 'gagal' digunakan untuk menunjuk anggota struktur yang sama dengan tanda yang berbeda. Kemudian hasilnya sekarang dicetak sebagai 34, 42, 13. Ini dengan jelas menjelaskan bahwa struktur akan memiliki salinan variabel anggota kemudian meneruskan anggota ke blok fungsi yang akan datang.