Tipe Data
Pada kesempatan kali ini kita akan mempelajari tipe data pada pemrograman dart,sebelumnya kita telah mempelajari tentang variabel yang dapat menyimpan nilai. Jadi bagaimana komputer membedakan antara variabel yang bernilai angka atau teks? Dan kenapa penting untuk bisa membedakannya?
Dart memiliki banyak tipe data, yang mewakili jenis data, yang dapat kita gunakan dan bagaimana data tersebut dioperasikan komputer. adanya tipe data, komputer jauh lebih mudah untuk mengetahui mana tipe data text atau numerik/angka
Dart adalah bahasa yang mendukung type inference, type inference adalah Jenis inferensi yang mengacu pada deteksi otomatis jenis ekspresi dalam bahasa pemrograma
contoh :
var world = 'Hello World!'; // Tipe Data String
var myAge = 20; // Tipe Data integers
var isActive = true; // Tipe Data Boolean
Adanya Type Inference Komputer akan tahu bahwa variabel world memiliki nilai berupa String atau teks dan variabel myAge bernilai angka atau integers begitupun dengan variable isActive bernilai boolean, meskipun kita tidak mendefinisikannya secara eksplisit.
Anda tetap bisa mendeklarasikan tipe data variabel secara eksplisit untuk menghindari kebingungan dan memudahkan proses debugging, anda bisa membuat variable seperti ini :
String world = 'Hello World!';
int myAge = 20;
Dart mempunyai beberapa tipe data yg didukung yaitu :
TIPE |
DESKRIPSI |
CONTOH |
String |
Teks yang terdiri dari 0 atau beberapa karakter |
'Hello World' |
int |
Integer (bilangan bulat) |
100 |
double |
Bilangan desimal |
4.44, -99.99 |
num |
Bilangan bulat dan bilangan desimal |
10, 4.44, -99.99 |
bool |
Boolean |
true & false |
dynamic |
Tipe Apapun(Bebas) |
anda bisa memasukan tipe data apapun di sini |
List |
Kumpulan Nilai |
["a", "b", "c"], [1, 2, 3] |
Map |
key-value |
{"myAge": 20, "myNumber": 08123} |
Seperti yg sudah saya katakan, Dart mendukung type inference, sangat menarik bukan? jadi ketika kita mendeklarasikan variabel tanpa melakukan inisialisasi, variabel akan memiliki tipe dynamic. Karena sebuah variabel bernilai dynamic bisa berisi tipe apa pun, maka tidak ada masalah jika kita mengubah nilai apapun seperti string, int, num, boolean di dalamnya, contoh :
var myVariable; // Tipe Data dynamic
myVariable = 10;
myVariable = 'Hello World';
print(myVariable);
Berbeda halnya ketika kita menginisialisasi nilainya langsung ke dalam variabel myVariable secara langsung. text-editor akan menampilkan eror karena terjadi perubahan tipe data.
var myVariable = 7; // int
myVariable = 'Hello World'; // Kesalahan assignment
print(myVariable);