Belajar Swift : Cara Menggunakan Subscript di Swift
Mengakses anggota elemen dari koleksi, urutan dan daftar di Kelas, Struktur dan Pencacahan dilakukan dengan bantuan subskrip. Subskrip ini digunakan untuk menyimpan dan mengambil nilai dengan bantuan indeks. Elemen array diakses dengan bantuan someArray [index] dan elemen anggota berikutnya dalam instance Dictionary dapat diakses sebagai someDicitonary [key].
Untuk satu jenis, subskrip dapat berkisar dari satu hingga beberapa deklarasi. Kita dapat menggunakan subskrip yang sesuai untuk membebani tipe nilai indeks yang diteruskan ke subskrip. Langganan juga berkisar dari satu dimensi ke beberapa dimensi sesuai dengan kebutuhan pengguna untuk deklarasi tipe data masukan mereka.
Sintaks Deklarasi Subscript dan Penggunaannya
Mari kita rekap properti yang dihitung. Subscripts juga mengikuti sintaks yang sama seperti properti yang dihitung. Untuk menanyakan contoh tipe, subskrip ditulis di dalam tanda kurung siku diikuti dengan nama contoh. Sintaks subskrip mengikuti struktur sintaks yang sama seperti sintaks 'metode instance' dan 'properti yang dihitung'. Kata kunci 'subskrip' digunakan untuk menentukan subskrip dan pengguna dapat menentukan satu atau beberapa parameter dengan tipe kembaliannya. Langganan dapat memiliki properti baca-tulis atau hanya-baca dan instance disimpan dan diambil dengan bantuan properti 'getter' dan 'setter' seperti halnya properti yang dihitung.
Sintaksis
subscript(index: Int) −> Int { get { // used for subscript value declarations } set(newValue) { // definitions are written here } }
Contoh 1
struct subexample { let decrementer: Int subscript(index: Int) -> Int { return decrementer / index } } let division = subexample(decrementer: 100) print("The number is divisible by \(division[9]) times") print("The number is divisible by \(division[2]) times") print("The number is divisible by \(division[3]) times") print("The number is divisible by \(division[5]) times") print("The number is divisible by \(division[7]) times")
Ketika kami menjalankan program di atas menggunakan playground, kami mendapatkan hasil sebagai berikut -
The number is divisible by 11 times The number is divisible by 50 times The number is divisible by 33 times The number is divisible by 20 times The number is divisible by 14 times
Contoh2
class daysofaweek { private var days = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "saturday"] subscript(index: Int) -> String { get { return days[index] } set(newValue) { self.days[index] = newValue } } } var p = daysofaweek() print(p[0]) print(p[1]) print(p[2]) print(p[3])
Ketika kami menjalankan program di atas menggunakan playground, kami mendapatkan hasil sebagai berikut -
Sunday Monday Tuesday Wednesday
Opsi di Subskrip
Subscripts menggunakan satu hingga beberapa parameter input dan parameter input ini juga termasuk dalam tipe data apa pun. Mereka juga dapat menggunakan parameter variabel dan variadic. Subscripts tidak dapat memberikan nilai parameter default atau menggunakan parameter in-out.
Mendefinisikan beberapa subskrip disebut sebagai 'kelebihan subskrip' di mana kelas atau struktur dapat memberikan beberapa definisi subskrip sesuai kebutuhan. Beberapa subskrip ini disimpulkan berdasarkan tipe nilai yang dideklarasikan dalam tanda kurung kurawal.
struct Matrix { let rows: Int, columns: Int var print: [Double] init(rows: Int, columns: Int) { self.rows = rows self.columns = columns print = Array(count: rows * columns, repeatedValue: 0.0) } subscript(row: Int, column: Int) -> Double { get { return print[(row * columns) + column] } set { print[(row * columns) + column] = newValue } } } var mat = Matrix(rows: 3, columns: 3) mat[0,0] = 1.0 mat[0,1] = 2.0 mat[1,0] = 3.0 mat[1,1] = 5.0 print("\(mat[0,0])")
Ketika kami menjalankan program di atas menggunakan playground, kami mendapatkan hasil sebagai berikut -
1.0
Subskrip Swift 4 mendukung parameter tunggal ke beberapa deklarasi parameter untuk tipe data yang sesuai. Program ini mendeklarasikan struktur 'Matrix' sebagai matriks array 2 * 2 dimensi untuk menyimpan tipe data 'Double'. Parameter Matrix diinput dengan tipe data Integer untuk mendeklarasikan baris dan kolom.
Instance baru untuk Matriks dibuat dengan melewatkan jumlah baris dan kolom ke inisialisasi seperti yang ditunjukkan di bawah ini.
var mat = Matrix(rows: 3, columns: 3)
Nilai matriks dapat ditentukan dengan melewatkan nilai baris dan kolom ke dalam subskrip, dipisahkan dengan koma seperti yang ditunjukkan di bawah ini.
mat[0,0] = 1.0 mat[0,1] = 2.0 mat[1,0] = 3.0 mat[1,1] = 5.0
Post a Comment for "Belajar Swift : Cara Menggunakan Subscript di Swift"