Selamat Datang di Blog saya . Semoga informasi yang ada di Blog ini Bermanfaat . Terima Kasih .

Tipe data pada C#

Meskipun banyak tipe data pada C#, tipe-tipe data yang paling sering digunakan adalah int, double, string, bool dan object. Masing-masing memiliki kegunaannya sendiri:

  • int, digunakan untuk menyatakan suatu bilangan bulat, positif maupun negatif, sebagai contoh jumlah murid dalam satu kelas.
  • double, digunakan ketika kita perlu menyatakan suatu bilangan pecahan, misalkan nilai, harga atau berat. Akan tetapi, double adalah data dengan ketelitian 15-16 digit. Sehingga terkadang tipe data float dengan ketelitian 7 digit lebih disukai untuk contoh contoh tadi, dengan alasan menghemat memori.
  • string, digunakan ketika menyatakan sekumpulan karakter, baik itu nama, kalimat, password ataupun kode. String sesungguhnya merupakan suatu array dari char.
  • bool, bernilai true atau false. Paling sering digunakan untuk menyatakan suatu kondisi, misalnya IsEnabled, IsVisible, SedangHujan, SedangLapar, dan lain lain.
  • object, adalah class dasar dari semua tipe data dalam C#. Digunakan untuk menyatakan tipe data yang tidak pasti.
Tipe-tipe data lainnya adalah:
  • Mirip dengan int: sbyte, short, long, untuk tipe bertanda, byte, ushort, uint, ulong untuk tipe yang tak bertanda
  • Mirip dengan double: float dan decimal
  • char, untuk menyimpan satu karakter

Konversi tipe data antar angka pada C#

Terkadang kita dapat langsung menugaskan nilai antar tipe data yang berbeda. Misalnya jika kita menubaskan suatu nilai int ke variabel long, tidak ada perintah khusus yang dibutuhkan. Jika kita menugaskan tipe data yang lebih kecil ke tipe data yang lebih besar, C# akan secara implisit mengkonversi nilai tersebut. Akan tetapi jika tipe data yang lebih besar ditugaskan ke tipe data yang lebih kecil, diperlukan konversi tipe data. Sebagai contoh:
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int anInt = 10;
long aLong = 2000000000;
long luarBatas = 3000000000;
//3 milyar, melebihi batas int
anInt = (int)aLong;
Console.WriteLine(anInt);
//Akan tampil 2000000000
anInt = (int)overLimit;
Console.WriteLine(anInt);
//Akan tampil -1294967296
Console.ReadKey();
Penting diketahui bahwa jika suatu tipe data yang lebih besar dikonversi ke tipe data yang lebih kecil, dapat terjadi kehilangan data. Hal-hal ini juga berlaku ketika mengkonversi antara tipe data bilangan bulat dengan tipe data floating point. Selalu ingat bahwa berkurangnya ketelitian dapat terjadi.

Konversi tipe data string pada C#

Tipe yang paling banyak digunakan untuk input, output dan penyimpanan sebetulnya adalah string. Untuk mengkonversi tipe data apapun ke string sesungguhnya cukup sederhana karena setiap tipe data di C# memiliki metode ToString(). Sebagai contoh:
?
1
2
3
4
5
6
7
8
9
bool AdaMatahari = true;
int angka = 15;
double pecahan = 70.88;
Console.WriteLine(AdaMatahari.ToString()); //True
Console.WriteLine(angka.ToString());   //15
Console.WriteLine(pecahan.ToString()); //70.88
Console.ReadKey();
Di sisi lain, agak sulit mengkonversi dari string ke tipe lain. Semua tipe data numerik memiliki metoda Parse dan TryParse. Kita menggunakan ini untuk mengkonversi string ke tipe data numerik. Kita menggunakan Parse ketika kita SANGAT yakin mengenai string yang bersangkutan, ketika kita tidak yakin, kita gunakan TryParse. Sebagai contoh:
?
1
2
3
4
5
6
7
8
9
10
11
12
13
string strBool = Console.ReadLine();
bool aBool = Boolean.Parse(strBool);
Console.WriteLine(aBool);
string strInt = Console.ReadLine();
Console.WriteLine(Int32.Parse(strInt));
string strDouble = Console.ReadLine();
double aDouble;
bool BisaParse = double.TryParse(strDouble, out aDouble);
if (BisaParse) Console.WriteLine(aDouble); else Console.WriteLine("Tolong input suatu angka");
Console.ReadKey();
Coba masukkan "True" atau "FaLsE" pada prompt pertama, dan input yang valid pada prompt kedua dan ketiga. Program akan mengeluarkan kembali input yang diterima. Kemudian coba masukkan string yang bukan boolean ke dalam prompt pertama, akan terjadi runtime error. Dan terakhir, coba input string yang bukan angka pada prompt ketiga, program akan dengan rapi menampilkan "Tolong input suatu angka". Perlu diperhatikan bahwa runtime error pada saat debugging berarti Critical Error pada software yang sudah jadi. Hal ini harus dihindari semampunya.

Literal pada C#

Istilah literal atau literal constant merujuk pada suatu nilai pada program yang tidak dapat diubah. Kita menggunakan literal untuk menyatakan nilai-nilai. Literal-literal pada C# dijelaskan dalam tabel di berikut:
Tipe dataLiteralContoh
booltrue atau falsetrue
intBilangan bulat0, -200, 87329
intAwalan 0x untuk menyatakan bilangan heksadesimal0xF, 0xaeaeae
doubleBilangan pecahan dengan titik untuk menyatakan koma72.59034
doublee untuk menyatakan pangkat sepuluh6.02e23, 1.602e-19
stringKarakter-karakter yang diapit oleh petik dua"6f8c11# ^_^ <3"
charSatu karakter yang diapit oleh petik satu'K'
Untuk tipe data string, terdapat karakter karakter yang tidak dapat diketik langsung ke dalam petik dua. Untuk mewakili karakter-karakter tersebut, digunakan escape sequences. Escape sequence yang umum digunakan antara lain:
Escape SequenceKarakter yang diwakili
\'Single quote
\"Double quote
\\Backslash
\0Null, not the C# null value
\aBell
\bBackspace
\fForm feed
\nNewline
\rCarriage Return
\tHorizontal Tab
\vVertical Tab
Sebagai contoh apabila kita ingin menampung mysql < "path\ke\file\sqldump" ke dalam suatu string:
string command = "mysql < \"path\\ke\\file\\sqldump\"";

Batas nilai tipe-tipe data numerik pada C#

Bagian ini tidak terlalu penting, jika Anda lebih menghargai waktu dibanding pengetahuan, lewati bagian ini. Salah satu alasan untuk menggunakan tipe data lainnya adalah karena batasan nilai. Batasan nilai pada tiap tipe data di C# dipaparkan pada tabel berikut:
Tipe dataPenjelasanBatas nilai
sbyteBilangan bulat 8 bit bertanda−128 sampai 127
shortBilangan bulat 16 bit bertanda−32,768 sampai 32,767
intBilangan bulat 32 bit bertanda−2,147,483,648 sampai 2,147,483,647
longBilangan bulat 64 bit bertanda−9,223,372,036,854,775,808 sampai 9,223,372,036,854,775,807
byteBilangan bulat 8 bit tak bertanda0 sampai 255
ushortBilangan bulat 16 bit tak bertanda0 sampai 65,535
uintBilangan bulat 32 bit tak bertanda0 sampai 4,294,967,295
ulongBilangan bulat 64 bit tak bertanda0 sampai 18,446,744,073,709,551,615
floatFloating point berketelitian 7 digit±1.5e−45 sampai ±3.4e38
doubleFloating point berketelitian 15-16 digit±5.0e−324 sampai ±1.7e308
decimalBilangan dengan 28-29 angka penting(-7.9 x 1028 sampai 7.9 x 1028) / (100 to 28)
Bilangan bulat bertanda sesungguhnya menggunakan 1 bit dari ukuran data mereka untuk menyatakan tanda (negatif atau positif). Itulah kenapa batas nilai positif dari tipe tak bertanda dua kali lebih besar dari tipe yang bertanda dengan ukuran data yang sama. Akan tetapi bilangan bulat bertanda sudah jarang digunakan kecuali ketika berurusan dengan antarmuka hardware, pengolahan citra, atau pemrograman tingkat rendah lainnya. Dan juga, saya sarankan hindari menggunakan tipe data decimal karena tipe data ini tidak lazim pada bahasa pemrograman yang lain.


0 Response to "Tipe data pada C#"

Posting Komentar