JAVA’da Kullanıcıdan Veri Alma
Java’da kullanıcıdan veri almak için farklı yöntemler bulunmaktadır.
- Scanner Sınıfı ile Kullanıcıdan Veri Alma:
Scanner
sınıfı, kullanıcıdan girdi almak için kullanılır. Bu sınıf,System.in
akışını kullanarak kullanıcıdan girdi okur. ÖncelikleScanner
sınıfını import etmeniz gerekmektedir.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Adınızı girin: ");
String ad = scanner.nextLine();
System.out.println("Merhaba, " + ad + "!");
scanner.close();
}
}
Örnek olarak kullanıcıdan alınan iki sayı için hesap makinesi içerek java kodlarını yazalım.
Scanner scanner = new Scanner(System.in);
System.out.println("İlk sayıyı girin:");
double sayi1 = scanner.nextDouble();
System.out.println("İkinci sayıyı girin:");
double sayi2 = scanner.nextDouble();
System.out.println("İşlemi seçin (+, -, *, /):");
char islem = scanner.next().charAt(0);
double sonuc = 0;
sonuc += (islem == '+') ? sayi1 + sayi2 : 0;
sonuc += (islem == '-') ? sayi1 - sayi2 : 0;
sonuc += (islem == '*') ? sayi1 * sayi2 : 0;
sonuc += (islem == '/') ? (sayi2 != 0 ? sayi1 / sayi2 : 0) : 0;
if (islem != '+' && islem != '-' && islem != '*' && islem != '/') {
System.out.println("Hatalı işlem!");
return;
}
System.out.println("Sonuç: " + sonuc);
scanner.close();
- BufferedReader Sınıfı ile Kullanıcıdan Veri Alma:
BufferedReader
sınıfı da kullanıcıdan girdi almak için kullanılabilir. Bu sınıf,InputStreamReader
sınıfını kullanarak kullanıcıdan girdi okur. Bu yöntem daha düşük seviyede ve biraz daha karmaşıktır.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
System.out.print("Adınızı girin: ");
String ad = reader.readLine();
System.out.println("Merhaba, " + ad + "!");
reader.close();
}
}
NOT: Her iki yöntem de kullanıcıdan girdi almak için kullanılabilir. Ancak genellikle Scanner
sınıfı daha yaygın olarak tercih edilir, çünkü daha kolay kullanım sağlar ve genellikle daha temiz bir kod sağlar.