برای گرفتن داده ها از ورودی، یا همان کاربر روش های مختلفی وجود دارند که یکی از بهترین و پرکاربرد ترین آنها استفاده از کلاسی به نام Scanner میباشد.
وقتی بخواهیم از کلاسی استفاده کنیم، باید نام پکیج آن کلاس import، یا همان وارد شود؛ یعنی کامپایلر به صورت پیشفرض آن را شناسایی نکرده است.
برای استفاده از کلاسها ابتدا نام کلاس را مینویسیم، سپس یک نام برای شئ آن در نظر میگیریم، برای نوشتن کد Scanner در زبان جاوا به صورت زیر عمل میکنیم.
شئ چیست؟ بعد از ساختن کلاس، برای کار کردن با کلاس نیاز به تعریف نمونه ای از کلاس یا همان شئ داریم.
import java.util.Scanner;
public class myclass {
public static void main(String[]args) {
Scanner reader=new Scanner(System.in);
System.out.print("Enter Age:");
int age=reader.nextInt();
System.out.println("Age Is: "+age);
{
{
import کردن کلاس Scanner: این کد را در بالای برنامه مینویسیم.
import java.util.Scanner;
پیام به کاربر برای وارد کردن مقدار:
System.out.print("Enter Age:");
گرفتن مقدار به صورت عدد صحیح از کاربر:
int age=reader.nextInt();
گرفتن عدد اعشاری از کاربر:
double moadel=reader.nextDouble();
گرفتن مقدار صحیح و یا غلط:
boolean flag=reader.nextBoolean();
برای گرفتن داده ها به صورت رشته ای یا متنی، میتوان به شکل زیر عمل کرد، اما در خروجی به مشکلی بر خواهیم خورد که اگر در هنگام وارد کردن رشته از کاراکتر فاصله استفاده کنیم کامپایلر نمیتواند به صورت صحیح آنرا ذخیره کند. در نتیجه این متد،متد خوبی برای ذخیره رشته نمیباشد.
String name=reader.next();
به جای متد next از متد nextLine به صورت زیر استفاده میکنیم. در این متد برای ذخیره اطلاعات مشکلی به وجود نمیآید:
String name=reader.nextLine();
گرفتن مقدار به صورت کاراکتر:
char ch=reader.next().charAt(0);
ساختن یک شئ:
Scanner reader=new Scanner(System.in);
نام کلاس: Scanner
نام شئ: reader
import java.util.Scanner;
public class myclas {
public static void main(String[]args) {
Scanner reader=new Scanner(System.in);
System.out.print("Enter Value :");
String str="256";
int x=Integer.parseInt(str);
System.out.println(x);
}
}
import java.util.Scanner;
public class myclas {
public static void main(String[]args) {
Scanner reader=new Scanner(System.in);
System.out.print("Enter Value :");
String str="63.456";
double x=Double.parseDouble(str);
System.out.println(x);
}
}
import java.util.Scanner;
public class myclas {
public static void main(String[]args) {
Scanner reader=new Scanner(System.in);
System.out.print("Enter Value :");
String str="true";
boolean x=Boolean.parseBoolean(str);
System.out.println(x);
}
}
import java.util.Scanner;
public class myclas {
public static void main(String[]args) {
Scanner reader=new Scanner(System.in);
System.out.print("Enter Value :");
int x=90;
String str=""+x;
System.out.println(str);
}
}