ورودی کاربر در جاوا
برای گرفتن ورودی از کاربر در زبان Java، از کلاس Scanner استفاده میشود. کلاس Scanner یک کلاس داخلی از پکیج java.util است.
کلاس Scanner در جاوا، متدهای داخلی زیادی برای گرفتن انواع مختلف ورودی از کاربر فراهم میکند.
چگونه از کلاس Scanner برای گرفتن ورودی از کاربر استفاده کنیم؟
مراحل زیر برای استفاده از کلاس Scanner جهت دریافت ورودی از کاربر در جاوا هستند:
مرحله ۱: وارد کردن کلاس Scanner
ابتدا باید کلاس Scanner را وارد (import) کنید تا بتوانید از متدهای آن استفاده نمایید. برای وارد کردن کلاس Scanner از دستور import زیر استفاده کنید:
import java.util.Scanner;
import java.util.Scanner
مرحله ۲: ایجاد شیء از کلاس Scanner
پس از وارد کردن کلاس Scanner، باید یک شیء از آن ایجاد کنید تا بتوانید از متدهای آن استفاده نمایید. برای ایجاد شیء از کلاس Scanner، باید سازنده (constructor) کلاس Scanner() را فراخوانی کنید.
در زیر دستور برای ایجاد شیء از کلاس Scanner آورده شده است:
Scanner scanner = new Scanner(System.in);
Scanner obj = new Scanner(System.in);
مرحله ۳: گرفتن ورودی از کاربر
کلاس Scanner متدهای مختلفی برای گرفتن ورودی از کاربر در انواع مختلف فراهم میکند. به عنوان مثال، اگر بخواهید یک عدد صحیح وارد کنید، از متد nextInt() استفاده میکنید.
در زیر دستور برای گرفتن ورودی از کاربر در جاوا آورده شده است:
int number = scanner.nextInt();
برای انواع ورودیهای مختلف، میتوانید از متدهای مختلف کلاس Scanner مانند nextLine() برای ورودیهای رشتهای، nextDouble() برای ورودیهای اعشاری و غیره استفاده کنید.
int age = obj.nextInt();
بیانیهی بالا منتظر ورودی یک عدد صحیح از کاربر خواهد بود. هنگامی که کاربر یک مقدار عددی وارد کند، آن مقدار به متغیر age اختصاص داده میشود.
مثال از ورودی کاربر در جاوا
در مثال زیر، دو عدد صحیح از کاربر خوانده میشوند، جمع آنها محاسبه شده و نتیجه چاپ میشود:
// Importing the class import java.util.Scanner; public class AddTwoNumbers { public static void main(String[] args) { // Creating an object of Scanner class Scanner sc = new Scanner(System.in); // Reading two Integer numbers // using nextInt() method System.out.print("Enter the first number: "); int num1 = sc.nextInt(); System.out.print("Enter the second number: "); int num2 = sc.nextInt(); // Calculating the sum int sum = num1 + num2; // Printing the su System.out.println("The sum of the two numbers is: " + sum); } }
خروجی
yaml Copy Edit Enter the first number: 10
Enter the second number: 20
The sum of the two numbers is: 30
متدهای مختلف برای انواع ورودیهای کاربر
کلاس Scanner متدهای مختلفی برای انواع مختلف ورودیهای کاربر فراهم میکند. برای آشنایی با همهی متدها برای ورودیهای مختلف، جدول زیر را مشاهده کنید:
ورودی عدد صحیح از کاربر
متد nextInt() برای دریافت ورودی یک عدد صحیح از کاربر استفاده میشود.
مثال
در مثال زیر، یک عدد صحیح به عنوان ورودی گرفته میشود:
// Importing the class import java.util.Scanner; public class IntegerInput { public static void main(String[] args) { // Creating an object of Scanner class Scanner sc = new Scanner(System.in); // Reading an Integer Input System.out.print("Input an integer value: "); int int_num = sc.nextInt(); System.out.print("The input is : " + int_num); } }
خروجی
مقداری عدد صحیح وارد کنید: ۱۰۱ مقدار ورودی: ۱۰۱
ورودی عدد اعشاری از کاربر
متد nextFloat() برای دریافت ورودی یک عدد اعشاری (float) از کاربر استفاده میشود.
مثال
در مثال زیر، یک عدد اعشاری به عنوان ورودی گرفته میشود:
// Importing the class import java.util.Scanner; public class IntegerInput { public static void main(String[] args) { // Creating an object of Scanner class Scanner sc = new Scanner(System.in); // Reading a Float Input System.out.print("Input a float value: "); float float_num = sc.nextFloat(); System.out.print("The input is : " + float_num); } }
خروجی
مقداری عدد اعشاری وارد کنید:
ورودی رشته (String) از کاربر متد nextLine() برای دریافت ورودی یک مقدار متنی (رشتهای) از کاربر استفاده میشود.
مثال
در مثال زیر، یک رشته به عنوان ورودی گرفته میشود:
// Importing the class import java.util.Scanner; public class IntegerInput { public static void main(String[] args) { // Creating an object of Scanner class Scanner sc = new Scanner(System.in); // Reading a String Input System.out.print("Input a string value: "); String str = sc.nextLine(); System.out.print("The input is : " + str); } }
خروجی
Input a string value: Hello World
The input is : Hello World