Değişkenler, verileri hafızada belli bir alan içinde tutmaya, saklamaya yararlar. Her değişken tanımı yapılırken bir veri tipi belirtilir. Veri tipine göre de değişken tanımlandığı esnada hafızada ne kadar yer kaplayacağı belli olur. Yazının başında da verilen tabloya tekrar göz gezdirelim şimdi.
Java'da iki tip değişken grubu vardır:
- İlkel Veri Tipleri (Primitive Data Types)
- Nesne Veri Tipi (Object Data Types ya da Non-Primitive Data Types)
Java'da dille birlikte tanımlı olarak gelen 8 adet ilkel veri tipi vardır.
- boolean
- int
- char
- byte
- short
- long
- float
- double
Veri Tipi | Varsayılan Değeri | Veri Boyutu |
---|---|---|
boolean | false | 1 bit |
char | '\u0000' | 2 byte |
byte | 0 | 1 byte |
short | 0 | 2 byte |
int | 0 | 4 byte |
long | 0L | 8 byte |
float | 0.0f | 4 byte |
double | 0.0d | 8 byte |
Bu veri tipinde sadece iki değer tutabiliriz. "true" veya "false" şeklinde iki değere sahiptir. Hafızada 1 Bit büyüklüğünde yer kaplar.
Örnek Tanımlama:
boolean printerEnabled = false ;
-128 ile 127 arasında değer alabilen sayısal bir tam sayı tipidir. Varsayılan değeri sıfırdır. Özellikle, hafızada az yer kaplaması nedeniyle kullanılabilir. Eğer, "int" tipine gerek duymuyorsanız, "byte" kullanmak faydalı olacaktır.
Örnek Tanımlama:
byte humanAge =32;
16 Bit'lik (yani 2 Byte) veri büyüklüğüne sahip tam sayı veri tipidir. -32,768 ile 32,767 arasında değer alabilir. Varsayılan değeri sıfırdır. Yine "int" veri tipine ihtiyaç duymadığınız zaman "short" tipte değişkenler oluşturarak hafızadan kazanç sağlayabilirsiniz.
Örnek Tanımlama:
short m2OfRegion =11991;
32 Bit'lik (yani 4 Byte) veri büyüklüğüne sahip tam sayı veri tipidir. - 2,147,483,648 ile 2,147,483,647 arasında değer alabilir. Varsayılan değeri sıfırdır. "int" tipinde değişken tanımlarken gerçekten o kadar büyüklüğe sahip bir veri tutacak mıyız, iyi kontrol etmek gerekir. Örneğin: insan yaşı bilgisini "int" veri tipinde tutmak hafızada fazladan alan kaplamak demek olacaktır. Zaten insan yaşı "int" değerinden çok küçüktür. Bunun için "byte" tipinde bir değişken tanımlamak hafızayı etkin kullanmayı sağlayacaktır.
Örnek Tanımlama:
int bookCountInWorld =1199221;
64 Bit'lik (yani 8 Byte) veri büyüklüğüne sahip tam sayı değeridir. Tam sayı veri tipleri içinde en büyük değer aralığına sahip veri tipidir. Çok büyük basamaklı sayıları tutabilmek için idealdir. Hafızada önemli bir yer kaplar. Kullanırken dikkatli olmak gerekir.
-9,223,372,036,854,775,808 ile 9,223,372,036,854,775,807 arasında değer alabilir.
Örnek Tanımlama:
long galaxyCountInSpace =51992212222;
32 Bit'lik (yani 4 Byte) veri büyüklüğüne sahip ondalıklı sayı değeridir. Sayı aralığına bir limit getirilmemiştir. Hafızayı etkin kullanmak adına "double" veri tipi yerine tercih edilebilir. Çünkü, "double" veri tipi "float" 'dan daha büyük bir yer kaplamaktadır. Varsayılan değeri 0.0F şeklindedir. Float tipindeki değişkenlere atanan verilerin sonunda "f" son eki vardır. Değişkene atanan değerin "float" tipinde olduğunu belirtir.
Örnek Tanımlama:
float freezeRatio =3.23f;
64 Bit'lik (yani 8 Byte) veri büyüklüğüne sahip ondalıklı sayı değeridir. Sayı aralığına bir limit getirilmemiştir. Boyutu büyük olduğu için tanımlama yapılırken gerçekten "float" veri tipinin yetersiz olduğu durumlarda kullanılmalıdır. Varsayılan değeri 0.0d şeklindedir. Atanan verinin sonuna "d" son eki koyularak "double" tipte bir veri olduğu belirtilebilir. Fakat, "d" son ekinin koyulmadığı durumlarda ondalıklı sayı verisi varsayılan olarak "double" olarak kabul edilir. Konulması zorunlu değildir.
Örnek Tanımlama:
double freezeRatio =3.2322;
16 Bit'lik (yani 2 Byte) büyüklüğüne sahip karakter verilerini tutar. Unicode tipinde karakter verilerini saklar. '\u0000' (0) ile '\uffff' (65535) aralığında değer alır.
Örnek Tanımlama:
char letter = 'A';
char letter = 'B';
char letter = 'C';