Tipe Data #
Ruby memiliki berbagai tipe data yang memungkinkan Anda untuk menyimpan dan memanipulasi informasi dalam program Anda. Berikut adalah penjelasan mendetail tentang berbagai tipe data dalam Ruby beserta contohnya:
Integer #
Tipe Data: Integer
Deskripsi: Tipe data untuk menyimpan bilangan bulat, baik positif maupun negatif.
Contoh:
a = 42
b = -7
Penjelasan: a
menyimpan bilangan bulat 42 dan b
menyimpan bilangan bulat -7.
Float #
Tipe Data: Float
Deskripsi: Tipe data untuk menyimpan bilangan desimal (floating-point numbers).
Contoh:
pi = 3.14159
temperature = -10.5
Penjelasan: pi
menyimpan nilai desimal 3.14159 dan temperature
menyimpan nilai desimal -10.5.
String #
Tipe Data: String
Deskripsi: Tipe data untuk menyimpan teks atau urutan karakter.
Contoh:
name = "Alice"
greeting = 'Hello, world!'
Penjelasan: name
menyimpan string “Alice” dan greeting
menyimpan string ‘Hello, world!’. Ruby mendukung dua cara penulisan string: menggunakan tanda kutip ganda ("
) dan tanda kutip tunggal ('
). Tanda kutip ganda mendukung interpolasi string dan escape sequence, sementara tanda kutip tunggal tidak.
Symbol #
Tipe Data: Symbol
Deskripsi: Tipe data untuk menyimpan identifier atau nama yang tidak berubah dan sering digunakan sebagai kunci dalam hash.
Contoh:
:username
:admin
Penjelasan: :username
dan :admin
adalah simbol. Simbol lebih efisien dibandingkan string untuk kasus di mana Anda membutuhkan identifier tetap.
Array #
Tipe Data: Array
Deskripsi: Tipe data untuk menyimpan koleksi elemen yang dapat berupa berbagai tipe data. Elemen dalam array dapat diakses menggunakan indeks.
Contoh:
numbers = [1, 2, 3, 4, 5]
names = ["Alice", "Bob", "Charlie"]
mixed = [1, "two", 3.0, :four]
Penjelasan: numbers
adalah array yang berisi bilangan bulat, names
adalah array yang berisi string, dan mixed
adalah array yang berisi berbagai tipe data.
Hash #
Tipe Data: Hash
Deskripsi: Tipe data untuk menyimpan pasangan kunci-nilai. Kunci dan nilai dapat berupa berbagai tipe data.
Contoh:
person = { name: "Alice", age: 30, city: "Wonderland" }
scores = { "Alice" => 90, "Bob" => 85 }
Penjelasan: person
adalah hash dengan simbol sebagai kunci, sementara scores
adalah hash dengan string sebagai kunci.
Boolean #
Tipe Data: Boolean
Deskripsi: Tipe data untuk menyimpan nilai benar (true
) atau salah (false
).
Contoh:
is_valid = true
is_empty = false
Penjelasan: is_valid
menyimpan nilai boolean true
, dan is_empty
menyimpan nilai boolean false
.
NilClass #
Tipe Data: NilClass
Deskripsi: Tipe data untuk menyimpan nilai nil
, yang biasanya digunakan untuk menunjukkan ketiadaan nilai atau keadaan yang tidak terdefinisi.
Contoh:
value = nil
Penjelasan: value
diatur ke nil
, menunjukkan bahwa variabel ini tidak memiliki nilai.
Range #
Tipe Data: Range
Deskripsi: Tipe data untuk menyimpan rentang nilai, seperti rentang bilangan atau rentang tanggal.
Contoh:
range1 = 1..10 # Rentang inklusif dari 1 hingga 10
range2 = 1...10 # Rentang eksklusif dari 1 hingga 10 (tidak termasuk 10)
Penjelasan: range1
mencakup semua bilangan dari 1 hingga 10, sedangkan range2
mencakup bilangan dari 1 hingga 9.
Class #
Tipe Data: Class
Deskripsi: Tipe data untuk mendefinisikan kelas dalam Ruby. Kelas adalah blueprint untuk membuat objek.
Contoh:
class Person
def initialize(name, age)
@name = name
@age = age
end
def introduce
"Hello, my name is #{@name} and I am #{@age} years old."
end
end
Penjelasan: Person
adalah kelas yang mendefinisikan konstruktor initialize
dan metode introduce
.
Module #
Tipe Data: Module
Deskripsi: Tipe data untuk mendefinisikan modul dalam Ruby. Modul digunakan untuk mendefinisikan metode dan konstanta yang dapat digunakan oleh kelas lain melalui mixin.
Contoh:
module Greeter
def greet
"Hello!"
end
end
Penjelasan: Greeter
adalah modul yang mendefinisikan metode greet
, yang dapat digunakan oleh kelas yang menginclude modul ini.
Dengan memahami berbagai tipe data di Ruby, Anda dapat lebih efektif dalam menyimpan, mengelola, dan memanipulasi data dalam program Anda. Jika ada aspek lain yang ingin Anda ketahui atau pertanyaan lebih lanjut tentang tipe data, silakan beri tahu!