public class Selam public static void MainString args
public class Selam { public static void Main(String args[]) { Console. Writeline("Selamlar !"); } }
İlkel tip Boyut Minimum Maximum Sarmalıyıcı tip bool — — — boolean char 16 - bit Unicode 0 Unicode 216 - 1 character int 32 - bit -2 31 +2 31— 1 Integer double 64 - bit IEEE 754 double string 32 - bit Unicode 0 Unicode 231 - 1 string int i = 5 ; // ilkel tip Integer in = new Integer(5); // sarmalıyıcı class { int a = 12; /* sadece a mevcut*/ { int b = 96; /* a ve b mevcut */ } /* sadece a mevcut */ /* b geçerlilik alanının dışına çıktı */
{ // dış alan int a = 12; { // iç alan int a = 96; /* C# için yanlıs ama C ve C++ doğru*/ } // iç alanın sonu } //dış alanın sonu public class Yeni. Bir. Sinif { public int i; public float f; public bool b; } public class Yeni. Bir. Sinif { public int i = 5 ; public float f = 3. 23; public boolean b = true ; }
Yeni. Bir. Sinif ybs = new Yeni. Bir. Sinif(); ybs. i = 5; ybs. f = 5. 3 f; ybs. b = false; ybs isimini verdiğimiz referansımız heap alanındaki Yeni. Bir. Sinif nesnesini göstermektedir. Eğer biz heap alanındaki bu Yeni. Bir. Sinif nesnesi ile temas kurmak istersek ybs referansını rahatlıkla kullanabiliriz. Nesnenin alanlarına ulaşmak için “. ” (nokta kullanırız) (Not : Ulaşmak isteğimiz alan private ise o zaman o alana dışarıdan ulaşmanın hiçbir yolu yoktur , public , friendly , protected , private ilerideki konularda detaylı bir şekilde anlatılmaktadır , panik yok public class Selam { public static void Main(String args[]) { Console. Writeline("Selamlar !"); } }
Depolanan (Storage) Veriler Nerede Durmaktadır Depo, toplam 4 alandan oluşur, bu 4 alanı açıklarsak : 11. 1 Stack : Bulunduğu nokta bellek içerisindedir yani RAM (random-access memory). Bu alanda bulunan yığın işaretcisine (stack pointer) direk olarak Cpu dan destek vardır. Yığın işaretcisi (stack pointer) aşağıya inince yeni bir hafiza alanı oluşturur , yukarı kalkınca ise bellek alanını bırakır (release). C# derleyicisi programı oluşturmadan evvel, stack üzerinde oluşturulacak olan verilerin boyutlarını ve ömürlerini (lifetime) bilmek zorundadır çünkü yığın işaretcisini (stack pointer) aşağı ve yukarı hareket ettirecek olan kodu oluşturması gerekmektedir. Stack üzerinde referansların kendileri bulunur. Maket ucağı örneğini hatırlarsak, bu alanda sadece kumanda cihazları durabilir. ( ) 11. 2 Heap : Burası genel amaçlı bir bellek havuzudur. Stack alanının tersine , derleyici burada ne kadarlık bir belleğin pay edileceğini bilmek zorunda değildir. Bu büyük bir rahatlık getirmektedir çünkü ne zaman bir nesne oluşturmak istersek sadece new anahtar kelimesini kullanarak bu alanda bir yer kendimize tahsis etmiş oluruz. Bu kadar rahatlığın karşılığında ise ödenmesi gereken fatura hızdır. Heap alanında yer ayırmak için harcanan zaman , stack alanında yer ayırmaktan daha fazladır. Heap alanında nesnelerin kendisi durur. Maket ucağı örneğini hatırlarsak, bu alanda sadece maket uçaklarının kendisi bulunur yani bu alanı gökyüzü gibi düşünebiliriz. ( ) 11. 3 Statik Alan : Bu alanda RAM üzerinde bulunur. Statik alanda yer alan veriler, programın çalışması süresince orada yaşarlar. Tüm nesneler bu statik verileri görebilirler , ortak bir alan gibi düşünebiliriz. Veriyi statik yapmak icin static kelimesini değişkenin önüne getirmemiz yeterli olur. Objelerin kendileri bu alanda yer almazlar.
11. 4 Sabit Disk : Bazı durumlarda uygulamaların içerisinde oluşturduğumuz nesnelerin , uygulama sonlandıktan sonra bile varlıklarını sürdürmelerini isteriz. ( ) 1 ) Akışkan Objeler (streamed objects) : Bu nesneler, genellikle ağ(network) üzerindeki başka bir makinaya gönderilmek üzere byte ırmaklarına dönüştürülürler. ( ) 2 ) Kalıcı Objeler ( persistent objects) : Bu nesneler kendi durumlarını (state) saklarlar. Kendi durumlarını saklamaktan kasıt edilen ise özelliklerinin (attribute) değerlerinin korunmasıdır. ( ) İlkel Tip Varsayılan değer (Default value) bool false char ‘u 0000’ (null) int 0 double 0. 0 d
dönüşTipi metodunİsmi( /* argüman listesi */ ) { /* Metod gövdesi */ } dönüşTipi = Bir metod ya değer döndürür veya döndürmez. Bu değer bir ilkel tip olabilir veya bir nesneye bağlanmış referans olabilir. ). Eğer bir metod hiçbirşey döndürmüyorsa void ekini metodun başına yerleştirmemiz gereklidir. metodunİsmi = C#nın kendisine ait olan kelimeler (if , else , import , class , return. . vb) ve Türkçe krakterler hariçinde istediğiniz ismi kullanabilirsiniz ama metodlar bir eylem içerdikleri için , metod isimlerininde bir eylemi belirtmesi tercih edilir örneğin : sayi. Sirala() , en. Buyuk. Sayi. Bul(), sql. Calistir() gibi arguman listesi= Metod içerisinde işlemler yapabilmek için gerekli olan parametreler. Bu parametreler ilkel tipte veya sınıf tipinde olabilirler. metod gövdesi = Bu kısım kodu yazan kişinin hayal gücüne bağlı olarak değişmektedir. int boyut. Dondur(string kelime) { return kelime. length() ; } // metodun sonu
string elma. Hesapla( int elmasayisi) { return new string(" toplam elma sayisi = " + elmasayisi*18); } void hesapla(string kelime , int kdv ) { string sonkelime = kelime; Console. Writele int sondeger = 0; int kelimeboyut = 0 ; int toplamboyut ; // Hatali !!!!! toplamboyut++; sondeger = kelimeboyut + kdv ; } void unite. Kontrol(int deger) { if (deger == 1 ) { // eger deger 1'e esitse metod u terk et return; } else { // gerekli islemler
statik metodlar : Statik metodları , nesneye bağımlı olmayan metodlar diye tanımlıyabiliriz. Bu metodların kullanılması için sınıfa ait nesnenin oluşturulması gerekmez public class Test. Normal { public void uyari. Yap() { Console. Writeline("Dikkat"); } public static void Main(String args[]) { Test. Normal tn = new Test. Normal() ; //dikkat tn. uyari. Yap(); } }
public class Test. Statik { public static void uyari. Yap() { Console. Writeline("Dikkat statik metod"); } public static void Main(String args[]) { Test. Statik. uyari. Yap(); } } Bu örneğimizde tek fark uyari. Yap() metodunun statik olarak değiştirilmesi değildir. Bu metodun çağrılma şeklide değişmiştir. uyari. Yap() metodu artık Test. Statik nesnesine bağlı bir metod değildir , yani uyari. Yap() metodunu çağırabilmemiz için Test. Statiksınıfına ait bir nesne oluşturmamız gerekmez. Main() metodunda da işler aynıdır , fakat Main() metodunun C# içerisinde çok farklı bir yeri vardır. Main() metodu C# uygulamaları için bir başlangıç noktasıdır.
1 İlkel tiplerde atama Atama işlemi ilkel (primitive) tipler için basittir. ilkel (primitive) tipler değerleri direk kendileri tuttukları (herhangi bir objeyi referans etmediklerinden) için , bir ilkel tipi diğerine atadığımız zaman değişen sadece içerikler olur int a=4 b=5 a=b a ; b ; ; Sonuc olarak a ve b değişkenlerinin değerleri aşağıdaki gibi olur. a=5 , b=5 2. 2 Objelerde atamalar biraz daha karmaşıktır. Sonuç olarak objeleri yönetmek için referansları kullanırız ve eğer bir atama işlemi olacaksa bu referansların ayni objeyi göstermesi anlamına gelir. Objelerin birbirleri üzerlerine kopyalanması gibi bir şey söz konusu değildir.
class Sayi { int i; } public class Objelerde. Atama { public static void Main(String[] args) { Sayi s 1 = new Sayi(); Sayi s 2 = new Sayi(); s 1. i = 9; s 2. i = 47; Console. Write. Line("1: s 1. i: " + s 1. i +", s 2. i: " + s 2. i); s 1 = s 2; // referanslar kopyalaniyor. . objeler değil Console. Write. Line("2: s 1. i: " + s 1. i +", s 2. i: " + 2. i); s 1. i = 27; Console. Write. Line("3: s 1. i: " + s 1. i +", s 2. i: "+ s 2. i); } }
3. Metod Cağrımları Metodların parametre kabul ettiklerini ve bu parametre alaraktan işlemler gerçekleştirdiğini biliyoruz. Peki metotlara parametre olarak ne gitmekte , objenin kendisi mi ? yoksa objenin referansı mı ? class Harf{ char c; } public class Obje. Paslama { static void f(Harf h) { h. c = 'z'; //Burada karakterin tek tırnak içinde verildiğine dikkat edin } public static void Main(String[] args) { Harf x = new Harf(); // Harf objesini oluşturuyoruz x. c = 'a'; // Harf objesinin c degiskenine deger atadik Console. Write. Line("1: x. c: " + x. c); f(x); /* Harf objesinin referansini f() methoduna gecirdik Burada objenin methoda gonderilmesi soz konusu degildir Method a gonderilen Harf objesinin referansidir. */ Console. Write. Line("2: x. c: " + x. c); } }
Yukarıdaki örneğimizde , iki adet sınıfımız bulunmakta , Harf Sınıfı ve Obje. Paslama Sınıfımız. Obje. Paslama sınıfımız public olduğu için fiziksel dosyanın ismi Obje. Paslama. C# dır. Bu ön bilgiden sonra programımızı açıklıyalım ; ilk olarak Harf objemizi oluşturuyoruz ve Harf objemizin char tipinde olan c değişkenine 'a' karakterini atıyoruz. Yaptığımız işlemi bir güzel ekrana bastırdıktan sonra Harf objesini işaret eden x referansını f() metoduna gönderiyoruz. İşler biraz karıştı gibi, devam edelim, sonra f() metodunun içersinde daha evvelden oluşturduğumuz Harf objesinin char tipinde olan c değişkenine 'z' karakterini atıyoruz. Bilgileri tekrardan ekrana bastırdığımızda görüyoruz ki Harf objesinin char tipinde olan c değişkeni değişmiş. Burada olan kesinlikle Harf objesinin yer değiştirmesi değildir. Harf objesinin bellekteki yeri her zaman sabittir. Olan olay sadece f() metodunun içersinde Harf objesine kısa süreli olarak başka bir Harf tipindeki bir referansın işaret etmiş olmasıdır (böylece Harf Objesine toplam iki referans işaret etmiş olmaktadır biri x diğeri ise h. Metodun sonuna gelindiğinde ise bu referansın( h referansı) geçerlilik alanı bitmiştir ama bu kısa süreli işlemde Harf objesinin char tipinde olan c değişkeni değişmiştir. Bu konuyu ilerleyen bölümlerde daha detaylı bir şekilde inceleyeceğiz.
Aritmetik Operatörler Operatör Kullanılış Açıklama + değişken 1 + değişken 2 değişken 1 ile değişken 2 yi toplar - değişken 1 - değişken 2 değişken 1 ile değişken 2 yi çıkarır * değişken 1 * değişken 2 değişken 1 ile değişken 2 yi çarpar / değişken 1 / değişken 2 değişken 1 , değişken 2 tarafından bölünür % değişken 1 % değişken 2 değişken 1 in değişken 2 tarafından bölümünden kalan hesaplanır. public class Aritmetik. Ornek { public static void Main(String[] args) { //Degisken degerleri int a = 57; int b = 42; double c = 27. 475; double d = 7. 22; Console. Write. Line("Degisken Degerleri. . . "); Console. Write. Line(" a = " + a); Console. Write. Line(" b = " + b); Console. Write. Line(" c = " + c); Console. Write. Line(" d = " + d); //Sayilari topluyoruz
Console. Write. Line("Toplama. . . "); Console. Write. Line(" a + b = " + (a + b)); Console. Write. Line(" c + d = " + (c + d)); //Sayilari cikartiyoruz Console. Write. Line("Cikartma. . . "); Console. Write. Line(" a - b = " + (a - b)); Console. Write. Line(" c - d = " + (c - d)); //Sayilari Carpiyoruz Console. Write. Line("Carpma. . . "); Console. Write. Line(" a * b = " + (a * b)); Console. Write. Line(" c * d = " + (c * d)); //Sayilari boluyoruz Console. Write. Line("Bolme. . . "); Console. Write. Line(" a / b = " + (a / b)); Console. Write. Line(" c / d = " + (c / d)); //Bolme islemlerinden kalan sayiyi hesapliyoruz Console. Write. Line("Kalan sayiyi hesaplama. . . "); Console. Write. Line(" a % b = " + (a % b)); Console. Write. Line(" c % d = " + (c % d)); //double ve int tiplerini karisik sekilde kullaniyoruz Console. Write. Line("Karisik tipler. . . "); Console. Write. Line(" b + d = " + (b + d)); Console. Write. Line(" a * c = " + (a * c)); }}
Uygulamamızın çıktısı aşağıdaki gibidir. Degisken Degerleri. . . a = 57 b = 42 c = 27. 475 d = 7. 22 Toplama. . . a + b = 99 c + d = 34. 695 Cikartma. . . a - b = 15 c - d = 20. 2550000003 Carpma. . . a * b = 2394 c * d = 198. 3695000002 Bolme. . . a / b = 1 c / d = 3. 805401662049862 Kalan sayiyi hesaplama. . . a % b = 15 c % d = 5. 8150000002 Karisik tipler. . . b + d = 49. 22 a * c = 1566. 075
Operatör Kullanılış Şekli Açıklama + + değişken Eğer değişken char, byte veya short tipinde ise int tipine dönüştürür - - değişken Değişkenin değerini negatif yapar (-1 ile çarpar). public class Operator. Test { public static void main(String args[]) { char a = 'a' ; int b = +a ; //otomatik olarak int ilkel tipine cevrildi int c = -b ; // degeri negatif yapti Console. Write. Line("a = " + a; Console. Write. Line("b = " + b; Console. Write. Line("c = " + c; } } Uygulamanın çıktısı aşağıdaki gibidir a = a b = 97 c = -97
public class Ilkel. Donusum { public static void Main(String args[]) { int a = 5 ; double b = (double) a ; double x = 4. 15 ; int y = (int) x ; long z = (long) y ; Console. Write. Line("b = " + b + " y = " + y + " z = " + z); } } Uygulamanın çıktısı: b = 5. 0 y = 4 z = 4 public class Otamatik. Cevirim { public static void Main(String args[]) { int x = 0; y = 1; z = 2; Console. Write. Line("Sonuc =" + x + y + z); } }
Opratr Kullanılılş Şekli true değeri döner eğer ki. . . . > değişken 1 > değişken 2 değişken 1 , değişken 2'den büyükse >= değişken 1 >= değişken 2 değişken 1 , değişken 2'den büyükse veya eşitse değişken 1 < değişken 2 değişken 1 , değişken 2'den küçükse <= değişken 1 <= değişken 2 değişken 1 , değişken 2'den küçükse veya eşitse == değişken 1 == değişken 2 değişken 1 , değişken 2'ye eşitse != değişken 1 != değişken 2 değişken 1 , değişken 2'ye eşit değilse < public class Iliskisel. Deneme { public static void Main(String[] args) { //bir kac sayi int i = 37; int j = 42; int k = 42; Console. Write. Line("Degisken degerleri. . . "); Console. Write. Line(" i = " + i); Console. Write. Line(" j = " + j); Console. Write. Line(" k = " + k); //Buyuktur Console. Write. Line("Buyuktur. . . "); Console. Write. Line(" i > j = " + (i > j)); //false - i , j
Console. Write. Line(" i >= j = " + (i >= j)); //false - i , j den kucuktur Console. Write. Line(" j >= i = " + (j >= i)); //true - j , i den buyuktur Console. Write. Line(" k >= j = " + (k >= j)); //true - k , j 'ye esit //Kucuktur Console. Write. Line("Kucuktur. . . "); Console. Write. Line(" i < j = " + (i < j)); //true - i , j den kucuktur Console. Write. Line(" j < i = " + (j < i)); //false - j , i den buyuktur Console. Write. Line(" k < j = " + (k < j)); //false - k , j 'ye esit //Kucuktur veya esittir Console. Write. Line("Kucuktur veya esittir. . . "); Console. Write. Line(" i <= j = " + (i <= j)); //true - i , j den kucuktur Console. Write. Line(" j <= i = " + (j <= i)); //false - j , i den buyuktur Console. Write. Line(" k <= j = " + (k <= j)); //true - k , j 'ye esit //Esittir Console. Write. Line("Esittir. . . ");
Console. Write. Line(" i == j = " + (i j den kucuktur Console. Write. Line(" k == j = " + (k 'ye esit //Esit degil Console. Write. Line("Esit degil. . . "); Console. Write. Line(" i != j = " + (i den kucuktur Console. Write. Line(" k != j = " + (k j 'ye esit } } Degisken degerleri. . . i = 37 j = 42 Buyuktur. . . i > j = false j > i = true Buyuktur veya esittir. . . i >= j = false j >= i = true Kucuktur. . . i < j = true j < i = false Kucuktur veya esittir. . . i <= j = true j <= i = false Equal to. . . i == j = false Not equal to. . . i != j = true == j)); //false - i , == j)); //true - k , j != j)); //true - i , j != j)); //false - k , k = 42 k > j = false k >= j = true k < j = false k <= j = true k == j = true k != j = false
public class Objelerin. Karsilastirilmasi { public static void Main(String[] args) { int s 1 = new int(47); int s 2 = new int(47); Console. Write. Line(s 1 == s 2); Console. Write. Line(s 1 != s 2); } } Programımızın çıktısı aşağıdaki gibidir: True , false Ama ne yazik ki öyle değil. Nedenini ise şöyle açıklayabiliriz , elimizde iki adet ayrı Integer objesi bulunmaktadır. Bu Integer objelerinin taşıdıkları değerler birbirlerine eşittir ama biz "s 1==s 2" ifadesi kullanarak şunu demiş olduk "s 1 ve s 2 referanslarının işaret etmiş oldukları objeler aynı mı ? " cevap tahmin edilebileceği gibi hayırdır yani false dur , s 1 ve s 2 ayrı Integer objelerini işaret etmektedir , eşit olan tek şey bu iki ayrı objenin içlerinde taşıdıkları 47 değeridir -ki bu eşitliği "s 1=s 2" ifadesi ile yakalayamayız. Programımızın çıktısı aşağıdaki gibidir: False, true
Op era tör Kullanılılş Şekli true değeri döner eğer ki. . . . && değişken 1 && değişken 2 Eğer hem değişken 1 hemde değişken 2 true ise ; değişken 2'yi duruma göre hesaplar* || değişken 1'in veya değişken 2'in true değişken 1 || olması ; değişken 2'yi duruma göre değişken 2 hesaplar* ! ! değişken & Eğer hem değişken 1 hemde değişken 2 değişken 1 & true ise ; değişken 1 ve değişken 2 her değişken 2 durumda hesaplanır*. | değişken 1'in veya değişken 2'in true değişken 1 | olması ; değişken 1 ve değişken 2 her değişken 2 durumda hesaplanır*. ^ Eğer değişken 1 ve değişken 2 değişken 1 ^ birbirlerinden farklı ise; ör: değişken 1 true değişken 2 , değişken 2 false ise* Eğer değişken false ise
public class Kosul. Op { public static void Main( String args[] { int a = 2 ; int b = 3 ; int c = 6 ; int d = 1 ; /* (a < b) = bu ifadenin true oldugunu biliyoruz (c < d) = bu ifadenin false oldugunu biliyoruz */ Console. Write. Line(" (a < b) && (c < d) --> " +(a < b) && (c < d); Console. Write. Line(" (a < b) || (c < d) --> " +(a < b) || (c < d); Console. Write. Line(" ! (a < b) --> " +! (a < b); Console. Write. Line(" (a < b) & (c < d) --> " +(a < b) & (c < d); Console. Write. Line(" (a < b) | (c < d) --> " +(a < b) | (c < d); Console. Write. Line(" (a < b) ^ (c < d) --> " +(a < b) ^ (c < d); } }
(a < b) && (c < d) --> false (a < b) || (c < d) --> true! (a < b) --> false (a < b) & (c < d) --> false (a < b) | (c < d) --> true (a < b) ^ (c < d) --> true Operatör Kullanılış Şekli Eşittir += değişken 1 += değişken 2 değişken 1 = değişken 1 + değişken 2 -= değişken 1 -= değişken 2 değişken 1 = değişken 1 - değişken 2 *= değişken 1*= değişken 2 değişken 1 = değişken 1 * değişken 2 /= değişken 1/= değişken 2 değişken 1 = değişken 1 / değişken 2 %= değişken 1%= değişken 2 değişken 1 = değişken 1 % değişken 2 &= değişken 1&= değişken 2 değişken 1 = değişken 1 & değişken 2 |= değişken 1|= değişken 2 değişken 1 = değişken 1 | değişken 2 ^= değişken 1^= değişken 2 değişken 1 = değişken 1 ^ değişken 2 <<= değişken 1<<= değişken 2 değişken 1 = değişken 1 << değişken 2 >>= değişken 1>>= değişken 2 değişken 1 = değişken 1 >> değişken 2 >>>= değişken 1>>>= değişken 2 değişken 1 = değişken 1 >>> değişken 2
İfade tipi Anahtar Kelime döngüleme while, do-while , for karar verme if-else, switch-case istisna yakalama try-catch-finally, throw dallandırma break, continue, label: , return public class While. Ornek { public static void Main(String args[]) { int i = 0 ; //döngü kontrol degiskeni while (i < 10 { Console. Write. Line("i = " + i); i++ ; } Console. Write. Line("Sayma islemi tamamlandi. "); } } Uygulamanın çıktısı i = 0 i = 1 i = 2 i = 3 i = 4 i = 5 i = 6 i = 7 i = 8 i = 9 Sayma islemi tamamlandi.
public class While. Do. Ornek { public static void Main(String args[]) { int i = 0 ; //döngü kontrol degiskeni do { Console. Write. Line("i = " + i); i++ ; } while i < 0; Console. Write. Line("Sayma islemi tamamlandi. "); } } public class For. Ornek { public static void Main(String args[]) { for (int i=0 ; i < 10 ; i ++) { Console. Write. Line("i = " + i); } } Uygulamın çıktısı aşağıdaki gibidir. } i = 0, i = 1, i = 2, i = 3, i = 4, i = 5, i = 6, i = 7, i = 8, i = 9
public class For. Ornek. Versiyon 2 { public static void Main(String args[]) { for(int i = 0 , j = 0 ; i < 20 ; i++ , j++) { i *= j ; Console. Write. Line("i = " + i + " j = " + j); } } } public class If. Else. Test { public static void Main(String[] args) { int puan = 76; char sonuc; if (puan >= 90) { sonuc = 'A'; } else if (puan >= 80) { sonuc = 'B'; } else if (puan >= 70) { sonuc = 'C'; } else if (puan >= 60) { sonuc = 'D'; } else { sonuc = 'F'; } Console. Write. Line("Sonuc = " + sonuc); }}
public class Kisa. Devre { public static boolean hesapla. Bir(int a) { Console. Write. Line("hesapla. Bir metoduna girildi"); return a > 1 ; } public static boolean hesapla. Iki(int a) { Console. Write. Line("hesapla. Iki metoduna girildi"); return a > 2 ; } public static void Main(String[] args) {Console. Write. Line("Baslangic"); //hesapla. Bir(0) --> false deger doner //hesapla. Iki(3) --> true deger doner Console. Write. Line("hesapla. Bir(0) && hesapla. Iki(3)"); if(hesapla. Bir(0) && hesapla. Iki(3)) {Console. Write. Line(" 1 -true "); } else {Console. Write. Line(" 1 -false "); }
Console. Write. Line("----"); Console. Write. Line("hesapla. Bir(0) || hesapla. Iki(3)"); if (hesapla. Bir(0) || hesapla. Iki(3)) {Console. Write. Line(" 2 -true "); } else {Console. Write. Line(" 2 -false "); } Console. Write. Line("----"); Console. Write. Line("hesapla. Bir(0) & hesapla. Iki(3)"); if (hesapla. Bir(0) & hesapla. Iki(3)) {Console. Write. Line(" 3 -true "); } else { Console. Write. Line(" 3 -false "); } Console. Write. Line("----"); Console. Write. Line("hesapla. Bir(0) | hesapla. Iki(3)"); if (hesapla. Bir(0) | hesapla. Iki(3)) {Console. Write. Line(" 4 -true "); } else { Console. Write. Line(" 4 -false "); } Console. Write. Line("----"); Console. Write. Line("hesapla. Bir(0) ^ hesapla. Iki(3)"); if (hesapla. Bir(0) ^ hesapla. Iki(3)) {Console. Write. Line(" 5 -true "); } else { Console. Write. Line(" 5 -true "); } Console. Write. Line("Son. . "); } }
Baslangic hesapla. Bir(0) && hesapla. Iki(3) hesapla. Bir metoduna girildi 1 -false-------hesapla. Bir(0) || hesapla. Iki(3) hesapla. Bir metoduna girildi hesapla. Iki metoduna girildi 2 -true-------hesapla. Bir(0) & hesapla. Iki(3) hesapla. Bir metoduna girildi hesapla. Iki metoduna girildi 3 -false-------hesapla. Bir(0) | hesapla. Iki(3) hesapla. Bir metoduna girildi hesapla. Iki metoduna girildi 4 -true-------hesapla. Bir(0) ^ hesapla. Iki(3) hesapla. Bir metoduna girildi hesapla. Iki metoduna girildi 5 –true Son. .
public class Aylar. Switch. Test { public static void Main(String[] args) { int ay = 8; switch (ay) { case 1: Console. Write. Line("Ocak"); break; case 2: Console. Write. Line("Subat"); break; case 3: Console. Write. Line("Mart"); break; case 4: Console. Write. Line("Nisan"); break; case 5: Console. Write. Line("Mayis"); break; case 6: Console. Write. Line("Haziran"); break; case 7: Console. Write. Line("Temmuz"); break; case 8: Console. Write. Line("Agustos"); break; case 9: Console. Write. Line("Eylul"); break; case 10: Console. Write. Line("Ekim"); break; case 11: Console. Write. Line("Kasim"); break; case 12: Console. Write. Line("Aralik"); break; } } }
public class Aylar. Switch. Test { public static void Main(String[] args) { int ay = 8; switch (ay) { case 1: Console. Write. Line("Ocak"); case 2: Console. Write. Line("Subat"); case 3: Console. Write. Line("Mart"); case 4: Console. Write. Line("Nisan"); case 5: Console. Write. Line("Mayis"); case 6: Console. Write. Line("Haziran"); case 7: Console. Write. Line("Temmuz"); case 8: Console. Write. Line("Agustos"); case 9: Console. Write. Line("Eylul"); case 10: Console. Write. Line("Ekim"); case 11: Console. Write. Line("Kasim"); case 12: Console. Write. Line("Aralik"); } } } Uygulamanın çıktısı aşağıdaki gibidir , bu istenmeyen bir durumdur ; Agustos, Eylul, Ekim, Kasim, Aralik
public class Aylar. Switch. Default. Test { public static void Main(String[] args) { int ay = 25; switch (ay) { case 1: Console. Write. Line("Ocak"); break; case 2: Console. Write. Line("Subat"); break; case 3: Console. Write. Line("Mart"); break; case 4: Console. Write. Line("Nisan"); break; case 5: Console. Write. Line("Mayis"); break; case 6: Console. Write. Line("Haziran"); break; case 7: Console. Write. Line("Temmuz"); break; case 8: Console. Write. Line("Agustos"); break; case 9: Console. Write. Line("Eylul"); break; case 10: Console. Write. Line("Ekim"); break; case 11: Console. Write. Line("Kasim"); break; case 12: Console. Write. Line("Aralik"); break; default: Console. Write. Line("Heyyy, Aranilan Kosul Bulunamadi !!"); } } }
public class Break. Test { public static void Main(String[] args) { for(int i = 0; i < 100; i++) { if(i ==9) {// for dongusunu kiriyor break; } Console. Write. Line("i =" +i); } Console. Write. Line("Donguden cikti"); } }
public class Break. Test. Etiketli { public static void Main(String[] args) { kiril : for(int j = 0 ; j < 10 ; j ++) { for(int i = 0; i < 100; i++) { if(i ==9) {// for dongusunu kiriyor break kiril; } Console. Write. Line("i =" +i); } Console. Write. Line("Donguden cikti"); Console. Write. Line("j =" +j); } } }
public class Break. Test. Etiketli { public static void Main(String[] args) { kiril : for(int j = 0 ; j < 10 ; j ++) { for(int i = 0; i < 100; i++) { if(i ==9) { // for dongusunu kiriyor break kiril; } Console. Write. Line("i =" +i); } Console. Write. Line("Donguden cikti"); Console. Write. Line("j =" +j); } } }
public class Continue. Test. Etiketli { public static void Main(String[] args) { pas : for(int j = 0 ; j < 6 ; j ++) { for(int i = 0; i < 5; i++) { if(i ==3) {// for dongusunu kiriyor continue pas; } Console. Write. Line("i =" +i); } Console. Write. Line("Donguden cikti"); Console. Write. Line("j =" +j); } } }
- Slides: 40