Java ile Basit Hesap Makinesi
Selam Java Geliştiriciler :)
Yeni bir java makalemizde yine birlikteyiz ve bugün java programlama dili ile küçük bir hesap makinesi
yapacağız.Aslına bakarsanız yaptığımız uygulama basit bir hesap makinesinden öte java ile değişken
dönüşümlerini gerçekleştirip bu değişken tiplerini matematiksel işlemlerde kullanmayı öğreneceğiz.
Tabi bir önceki makalemi okuduysanız kafanıza takılan soruların cevabını yine bu yazımda bulabilirsiniz.
Öncelikle NetBeans IDE'mizi açalım ve hesapMakinesi adında yeni bir proje açalım,ancak artık adım adım
nasıl proje açılır diye göstermiyorum çünkü önceki makalelerimde öğrenmiştiniz :)
Projemizi açtıktan sonra öncelikle bir form ekleyelim:
Formumuz hazır olduğuna göre şimdi 2 jLabel, 2 jTextField ve 1 jButtonu formumuza sürükleyip bırakalım:
Şimdide kontrollerimize isim vermeye geldi,bunun için hatırlayacağınız gibi kontrolümüzü mouse imlecimizle seçtikten
sonra sağdaki Properties penceresini kullanıyoruz.
jLabellara aşağıdaki gibi isimlendiriyoruz,jTextField ve jButton kontrollerine ise variable-name özelliklerine "jSayi1","jsayi2","jHesapla" isimlerini verelim:
Tabi jTextField'lerin text özelliğini "-" işaretleriyle doldurmayı unutmayalım :)
Artık hazırsak projemizi derleyelim,unutmadıysak bunun için F6 tuşunu kullanıyorduk ve derleme sonrasında çalıştırmak için Shift+F6 tuşuna basıyoruz (ya da soldaki projects penceresinde formumuza sağ tıklayıp "run file" ı seçiyoruz) ve formumuzu çalıştırıyoruz.
Şu anda formumuzun jButton kontrolümüz için herhangi bir kod yazmadığımız için butona tıklasanız dahi herhangi bir sonuç alamayacaksınız.
Bu yüzden formu kapatıp projemize dönüyoruz:
Yukarıdaki gibi yönergeleri takip edip butonumuzun "actionperformed" yani Microsoft diliyle konuşursak "click" eventine kod yazmaya başlıyoruz.
kod bloğu içerisinde değişkenlerimizi tanımlıyoruz:
Gördüğünüz gibi jSayi1 ve jSayi2 isimli jTextFieldlerimizin içine yazılacağı yazıyı GetText() metoduyla aldıktan sonra Integer sayısal değişken tipine Parse metoduyla dönüştürüp,yine sayısal olan sayi1 ve sayi2 değişkenlerine atadık.
Eğer değişken dönüşümlerinde daha önceden bilgi sahibi değilseniz,dönüşüm işlemlerini sağdan sola doğru okumanızı öneririm.
Yukarıdak yaptığımız dönüşümü tekrar özetlersek jTextBox kontrollerimizin içine yazılan yazıyı alıp sayısala dönüştürüp,tekrar sayısal olan bir başka değişkene atamış olduk.
Şimdi ise bir toplama işlemi yapalım ve sonucu ekranda mesaj kutusu ile gösterelim,toplama işlemini tahmin ettiğiniz gibi bildiğiniz matematikteki gibi "+" işaretiyle gerçekleştiriyoruz:
Sonuç yine sayısal bir işlem olacağı için sayıları kendi aralarında topladıktan sonra "topla" isimli integer sayısal tipinde yeni bir değişken tanımladık ve sonucu ekranda mesaj kutusu ile göstermek için JOptionPane classının showMessageDialog metodunu seçip ikinci parametresine topla değişkenini yazdık.
Programımızı çalıştırarak test ediyoruz:
Toplama işlemi doğru çalıştığına göre kodlarda bir sorun yok demektir.
Burada özellikle bir noktaya değinmek istiyorum,eğer C# ya da diğer Microsoft dillerinde yazılım geliştirebiliyorsanız ya da düşünüyorsanız değişken dönüşümleri konusu altında MessageBox.Show() metodunu göreceksiniz ve bu metot Java dilindeki JOptionPane.showMessageDialog() metotuna karşılık denk geldiği halde,metotun içerisinde illa string tipinde bir değişken ya da metin girilmesini şart koşuyorken bu örneğimizde gördüğünüz gibi sayısal bir değişkeni ayrıca herhangi bir değişkene dönüştürmeye gerek kalmadan ekrana yansıtabiliyor.
Eğer bu makalede mesela bir C# uygulaması geliştiriyor olsaydık;
JOptionPane.showMessageDialog("rootPane",topla);
satırını
MessageBox.Show(topla.ToString());
şeklinde yazmamız gerekirdi.
Konumuza dönersek şimdi de bir çıkarma örneği yapalım ve önceki kodlarımızdan yalnızca son iki satırı yorum satırı haline çevirelim.
Java'da Yorum Satırı:
Java'da bir kod satırını yorum satırı haline getirdiğimizde program derlenirken ve çalışırken yorum satırı haline getirilen kısım yoksayılır,ve bir satırı yorum satırı haline getirmek için "//" karakterlerini,birden çok satırı tek seferde yorum satırı haline getirmek için ise satırları arasına alacak şekilde "/**/" işaretlerini kullanırız.
Önceki satırları yorum satırı haline getirdikten sonra yine sayi1 ve sayi2 değişkenlerini kullanarak "-" işaretiyle çıkarma işlemi yapıyoruz.
Çarpma işlemi için ise:
"*" işaretini kullanarak çarpma işlemini gerçekleştirebiliyoruz.
Bölme işlemi için:
"/" işaretini kullanıyoruz.Ancak "/" işareti yerine "\" işareti yaparsanız hata alırsınız,bunun sebebi "\" işareti bir kaçış sekansı (escape sequance) olmasıdır.Bu konuyu ilerleyen zamanlarda anlatacağım.
Son olarak javada mod alma işlemini görelim:
Peki Mod Alma Nedir?
Mod,matematikte aslen bölme işleminde kullanılan bir terimdir.Bir sayının bir başka sayıya bölündükten sonra kalan hanesindeki sayıya "mod" denir.Ancak mod alma işlemindeki "%" işareti sizi sayının yüzdesini alıyoruz yanılgısına düşürmesin zira programcılıkta % işareti yüzde hesaplamayı değil,mod almayı temsil etmektedir.
Buraya kadar hep hesaplama işlemi yaptık,bir önceki makalemde String tipindeki değişkenin nasıl dönüştürüldüğünü inceleyelim:
Burada gördüğünüz gibi yine sayi1 isimli jTextField kontrolümüzdeki yazıyı getText() metoduyla alıp bu defa String.Format() değişkenimize aktarıyor ve String metinsel değişken tipindeki "kelime" değişkenine yüklüyoruz.Tabi String.Format() yerine String.valueOf() metodunun da aynı işlevi gösterdiğini belirteyim.
Java ile Double değişken tipi ise biraz enteresan diyebilirim;double değişken tipine bir veri aktarmak için dönüştürmek istediğiniz veri ya String tipinde ya da yine double tipinde olmak zorunda,aksinde değişken dönüşüm hatası alıyorsunuz.
Aynı örnekten yola çıkarsak sayısal int tipindeki "sayi1" değişkenimizi ele alalım:
Burada int tipindeki sayi1 değişkenimizi doğrudan double tipine dönüştürmek yerine önce string tipinde "sayi" değişkenine dönüştürüyor,ardından sayi değişkenimizi double değişkenimize yüklüyoruz.
Java dilinde değişken dönüşümlerini tek cümle ile özetlersek; bir veriyi (jTextField'den alacağımız ya da elle yazabileceğimiz) bir başka değişken tipine dönüştürmek istiyorsak en kısa yöntem YeniDegiskenTipi.valueOf() metodunu kullanmaktır.
Gördüğünüz gibi Java ile basit bir hesap makinesi yaptık ve yazımızın sonuna gelmiş bulunuyoruz.
Faydalı olacağını umuyor hoşçakalın diyorum :)
Projeyi İndir
Yeni bir java makalemizde yine birlikteyiz ve bugün java programlama dili ile küçük bir hesap makinesi
yapacağız.Aslına bakarsanız yaptığımız uygulama basit bir hesap makinesinden öte java ile değişken
dönüşümlerini gerçekleştirip bu değişken tiplerini matematiksel işlemlerde kullanmayı öğreneceğiz.
Tabi bir önceki makalemi okuduysanız kafanıza takılan soruların cevabını yine bu yazımda bulabilirsiniz.
Öncelikle NetBeans IDE'mizi açalım ve hesapMakinesi adında yeni bir proje açalım,ancak artık adım adım
nasıl proje açılır diye göstermiyorum çünkü önceki makalelerimde öğrenmiştiniz :)
Projemizi açtıktan sonra öncelikle bir form ekleyelim:
Formumuz hazır olduğuna göre şimdi 2 jLabel, 2 jTextField ve 1 jButtonu formumuza sürükleyip bırakalım:
Şimdide kontrollerimize isim vermeye geldi,bunun için hatırlayacağınız gibi kontrolümüzü mouse imlecimizle seçtikten
sonra sağdaki Properties penceresini kullanıyoruz.
jLabellara aşağıdaki gibi isimlendiriyoruz,jTextField ve jButton kontrollerine ise variable-name özelliklerine "jSayi1","jsayi2","jHesapla" isimlerini verelim:
Tabi jTextField'lerin text özelliğini "-" işaretleriyle doldurmayı unutmayalım :)
Artık hazırsak projemizi derleyelim,unutmadıysak bunun için F6 tuşunu kullanıyorduk ve derleme sonrasında çalıştırmak için Shift+F6 tuşuna basıyoruz (ya da soldaki projects penceresinde formumuza sağ tıklayıp "run file" ı seçiyoruz) ve formumuzu çalıştırıyoruz.
Şu anda formumuzun jButton kontrolümüz için herhangi bir kod yazmadığımız için butona tıklasanız dahi herhangi bir sonuç alamayacaksınız.
Bu yüzden formu kapatıp projemize dönüyoruz:
Yukarıdaki gibi yönergeleri takip edip butonumuzun "actionperformed" yani Microsoft diliyle konuşursak "click" eventine kod yazmaya başlıyoruz.
kod bloğu içerisinde değişkenlerimizi tanımlıyoruz:
Gördüğünüz gibi jSayi1 ve jSayi2 isimli jTextFieldlerimizin içine yazılacağı yazıyı GetText() metoduyla aldıktan sonra Integer sayısal değişken tipine Parse metoduyla dönüştürüp,yine sayısal olan sayi1 ve sayi2 değişkenlerine atadık.
Eğer değişken dönüşümlerinde daha önceden bilgi sahibi değilseniz,dönüşüm işlemlerini sağdan sola doğru okumanızı öneririm.
Yukarıdak yaptığımız dönüşümü tekrar özetlersek jTextBox kontrollerimizin içine yazılan yazıyı alıp sayısala dönüştürüp,tekrar sayısal olan bir başka değişkene atamış olduk.
Şimdi ise bir toplama işlemi yapalım ve sonucu ekranda mesaj kutusu ile gösterelim,toplama işlemini tahmin ettiğiniz gibi bildiğiniz matematikteki gibi "+" işaretiyle gerçekleştiriyoruz:
Sonuç yine sayısal bir işlem olacağı için sayıları kendi aralarında topladıktan sonra "topla" isimli integer sayısal tipinde yeni bir değişken tanımladık ve sonucu ekranda mesaj kutusu ile göstermek için JOptionPane classının showMessageDialog metodunu seçip ikinci parametresine topla değişkenini yazdık.
Programımızı çalıştırarak test ediyoruz:
Toplama işlemi doğru çalıştığına göre kodlarda bir sorun yok demektir.
Burada özellikle bir noktaya değinmek istiyorum,eğer C# ya da diğer Microsoft dillerinde yazılım geliştirebiliyorsanız ya da düşünüyorsanız değişken dönüşümleri konusu altında MessageBox.Show() metodunu göreceksiniz ve bu metot Java dilindeki JOptionPane.showMessageDialog() metotuna karşılık denk geldiği halde,metotun içerisinde illa string tipinde bir değişken ya da metin girilmesini şart koşuyorken bu örneğimizde gördüğünüz gibi sayısal bir değişkeni ayrıca herhangi bir değişkene dönüştürmeye gerek kalmadan ekrana yansıtabiliyor.
Eğer bu makalede mesela bir C# uygulaması geliştiriyor olsaydık;
JOptionPane.showMessageDialog("rootPane",topla);
satırını
MessageBox.Show(topla.ToString());
şeklinde yazmamız gerekirdi.
Konumuza dönersek şimdi de bir çıkarma örneği yapalım ve önceki kodlarımızdan yalnızca son iki satırı yorum satırı haline çevirelim.
Java'da Yorum Satırı:
Java'da bir kod satırını yorum satırı haline getirdiğimizde program derlenirken ve çalışırken yorum satırı haline getirilen kısım yoksayılır,ve bir satırı yorum satırı haline getirmek için "//" karakterlerini,birden çok satırı tek seferde yorum satırı haline getirmek için ise satırları arasına alacak şekilde "/**/" işaretlerini kullanırız.
Önceki satırları yorum satırı haline getirdikten sonra yine sayi1 ve sayi2 değişkenlerini kullanarak "-" işaretiyle çıkarma işlemi yapıyoruz.
Çarpma işlemi için ise:
"*" işaretini kullanarak çarpma işlemini gerçekleştirebiliyoruz.
Bölme işlemi için:
"/" işaretini kullanıyoruz.Ancak "/" işareti yerine "\" işareti yaparsanız hata alırsınız,bunun sebebi "\" işareti bir kaçış sekansı (escape sequance) olmasıdır.Bu konuyu ilerleyen zamanlarda anlatacağım.
Son olarak javada mod alma işlemini görelim:
Peki Mod Alma Nedir?
Mod,matematikte aslen bölme işleminde kullanılan bir terimdir.Bir sayının bir başka sayıya bölündükten sonra kalan hanesindeki sayıya "mod" denir.Ancak mod alma işlemindeki "%" işareti sizi sayının yüzdesini alıyoruz yanılgısına düşürmesin zira programcılıkta % işareti yüzde hesaplamayı değil,mod almayı temsil etmektedir.
Buraya kadar hep hesaplama işlemi yaptık,bir önceki makalemde String tipindeki değişkenin nasıl dönüştürüldüğünü inceleyelim:
Burada gördüğünüz gibi yine sayi1 isimli jTextField kontrolümüzdeki yazıyı getText() metoduyla alıp bu defa String.Format() değişkenimize aktarıyor ve String metinsel değişken tipindeki "kelime" değişkenine yüklüyoruz.Tabi String.Format() yerine String.valueOf() metodunun da aynı işlevi gösterdiğini belirteyim.
Java ile Double değişken tipi ise biraz enteresan diyebilirim;double değişken tipine bir veri aktarmak için dönüştürmek istediğiniz veri ya String tipinde ya da yine double tipinde olmak zorunda,aksinde değişken dönüşüm hatası alıyorsunuz.
Aynı örnekten yola çıkarsak sayısal int tipindeki "sayi1" değişkenimizi ele alalım:
Burada int tipindeki sayi1 değişkenimizi doğrudan double tipine dönüştürmek yerine önce string tipinde "sayi" değişkenine dönüştürüyor,ardından sayi değişkenimizi double değişkenimize yüklüyoruz.
Java dilinde değişken dönüşümlerini tek cümle ile özetlersek; bir veriyi (jTextField'den alacağımız ya da elle yazabileceğimiz) bir başka değişken tipine dönüştürmek istiyorsak en kısa yöntem YeniDegiskenTipi.valueOf() metodunu kullanmaktır.
Gördüğünüz gibi Java ile basit bir hesap makinesi yaptık ve yazımızın sonuna gelmiş bulunuyoruz.
Faydalı olacağını umuyor hoşçakalın diyorum :)
Projeyi İndir
Elinizdeki script özgün mü yoksa sizin tarafınızca mı yazıldı. Kolay gelsin.
Merhabalar Ahmet Turan Öztürk, Bu blogda yazılan yazıları ve ders konusundaki tüm görselleri kendim hazırlamakta ve herhangi bir yerden alıntı kullanmıyorum.
benim mail adresim "tancemile@gmail.com" sercan bey bana ulaşabilir misiniz teşekkürler kolay gelsin bekliyorum...
kolay gelsin abi. kurulum olarak 7.0.1 sürümünü göstermişsin ama bu makalende 7.3 sürümü kullanılmış bi farklılık yaratırmı. Çünkü 7.0.1 sürümünü kullandığım programda hesap makinesi adlı projede hata alıyorum.
Merhaba Emre,sürümler arasında herhangi bir farkın olması çok şey değiştirmez.Makalede anlatılanları bire bir uyguladığında sorun çıkmaması gerekiyor,yazdığın kodlara tekrar bakmanı öneririm.Kolay gelsin :)