Merhaba Arkadaşlar,
mobilhanem.com sitemizden anlattığımız yayınladığımız Temel Java derslerimize bu dersimizde scanner sınıfı kullanımı ile devam edeceğiz.
Aslında Scanner sınıfın kullanımını daha ileriki derslerde anlatmamız gerekir fakat anlattığımız ve anlatacağımız derslerde kullanıcı etkileşimi için bu dersi daha önceden anlatmak istedik. Kullanıcı etkileşimden kastımızın ne olduğunu açıklamak gerekirse , kullanıcının klavyeden string,int ,float ,char vs.. gibi değerleri girebilmesi diyebiliriz. Bu aldığımız değerleri kullanıcıdan aldıktan sonra matematiksel işlemler yapabilir, koşulların içinde kullanabilir,ileride anlatacağımız döngülerde kullanabiliriz. Böylelikle vereceğimiz örnekleri hem daha çeşitli verebilir hemde kullanıcı etkileşimi ile daha anlaşılabilir hale getirebiliriz.
import kullanımı
Öncelikle dersime geçmeden önce Java’da import kullanımından bahsedelim. import Java’da dahil etmek anlamında kullanılmaktadır. Bizde import anahtar kelimesini kullanarak programımıza farklı kütüphaneler ve classlar dahil edebiliriz.
import paketadi;
İki çeşit kullanımı vardır. Birinci kullanımı direk kullanacağımız Class’ı dahil etmek. Mesala java.util paketi altında onlarca Class bulunmaktadır.(List,ArrayList,Scanner,Random,Date ..). Bunları tek tek uygulamamıza aşağıdaki gibi dahil edebiliriz.
import java.util.List; import java.util.ArrayList; import java.util.Scanner; import java.util.Date;
İkinci kullanımı ise direk paketi dahil edebiliriz.Böylelikle o paket altındaki tüm class’ları kullanabiliriz. Bunuda aşağıdaki şekilde yapabiliriz.
import java.util.*;
NOT: Java’da paket yapısı ve import kullanımını daha detaylı olarak ilerleyen derslerimizde anlatacağız.
Biz bu dersimizde sadece Scanner sınıfını kullanacağımız için aşağıdaki şekilde ekleyebiliriz.
import java.util.Scanner;
Scanner sınıfını programımıza dahil ettik artık onun methodlarını kullanabilir ve kullanıcıdan değerler alabiliriz. Öncelikle kullanıcıdan string bir değer isteyip o değeri konsola yazdıralım.
/** * Created by tahakirca on 25/09/16. */ import java.util.Scanner; public class ScannerSinifi { public static void main(String args[]){ Scanner input = new Scanner(System.in); //Kullanıcıdan string değer alabilmek için Scanner sınıfını kullandık System.out.print("Lütfen mesaj giriniz: "); String mesaj = input.nextLine(); //String değeri burda alıyoruz System.out.println("Mesajınız: "+mesaj); } }
Girmiş olduğunuz mesajı konsola bastıracaktır. Şimdi kullanıcıdan iki sayı isteyelim ve bu sayıların toplamını konsola bastıralım.
/** * Created by tahakirca on 25/09/16. */ import java.util.Scanner; public class ScannerSinifi { public static void main(String args[]){ Scanner input = new Scanner(System.in); //Kullanıcıdan int değer alabilmek için Scanner sınıfını kullandık System.out.print("Lütfen ilk sayiyi giriniz: "); int sayi1 = input.nextInt(); //int değer alıyoruz System.out.print("Lütfen ikinci sayiyi giriniz: "); int sayi2 = input.nextInt(); //int değer alıyoruz System.out.println("Toplam: "+(sayi1+sayi2)); } }
Yukarıdaki iki örnekten gördüğümüz gibi nextLine() ile string değerini nextInt() ile int değerini aldık. Diğer tiplerde değerler alabilmek için aşağıdaki şekillerde kullanabiliriz.
nextLine() -> String
nextInt() -> Integer
nextByte() -> Byte
nextFloat -> Float
nextDouble -> Double
Daha bir çok tipte değer alabiliriz. Daha detaylı kullanımı için bu linki inceleyebilirsiniz. Biz bundan sonraki derslerimizde kullanıcıdan değerler alabilmek için bu sınıfın kullanımını basitçe anlatmaya çalıştık. Scanner class’ı konsoldan değerler almak için kullanılır. İleride arayüzlerle çalışıp değerleri input alanlarından alacağınız için çok fazla kullanacağınızı sanmıyorum.
Konuyla ilgili yorumlarınızı konu altından yapabilirsiniz, ayrıca sorularınızı yine konu altından ve Mobilhanem Soru&Cevap bölümünden sorabilirsiniz.
Tüm Temel Java Dersleri için tıklayınız..
170
Anlatımınız ve sorularınız gayet güzel elinize sağlık..
İşinize yaramasına sevindim. Kolay gelsin.
[…] sınıfını aşağıdaki gibi projeye eklemeliyiz(import). İmport kullanımı hakkında bilgiyi bu dersimizde […]
Abicim bu yazilim programini kavrasam herturlu oyun mobil uygulama (org,akor programi bu mobil cihazlarda bulunan yada. Kendi sutudyomuzu kendi stilimize uygun yapabilecezmi
Hayır yapamacaksın. Buradaki dersler işin en temeli. Ama bunları öğrenmeden ilerleyemezsin. Bu dersler bir başlangıç.
devam son hız…
[…] İlerleyen derslerde daha iyi anlayacağız) Scanner Sınıfı ve import kavramları için bu dersimizi inceleyebilirsiniz. Neden import etmemiz gerekmiyor diyorsanız Math Sınıfı […]
abi teşekkürler işime yaradı.
nextInt() ‘ten sonra nextLine() kullanırsam string’de boşluktan sonrasını ekrana yazdırmıyor. Nasıl çözebilirim bunu?
Bende öyle bir sıkıntı olmuyo, sen bi yazdığın kodu gönderebilir misin?
Belki yardımcı olabilirim
“nextInt() ‘ten sonra nextLine() kullanırsam string’de boşluktan sonrasını ekrana yazdırmıyor. Nasıl çözebilirim bunu?” bu sıkıntı bende de oluyor nasıl düzeltebilirim?
Yapmış olduğunuz örneği atabilir misiniz ?
System.out.println(“yasiniz:”);
int yas= sc.nextInt();
System.out.println(“adiniz:”);
String ad= sc.nextLine();
System.out.println(“yasiniz ve adiniz: “+ yas + ” ” + ad);
yaş kısmını yazdıktan sonra string kısmını yazamıyorum