Menu
Coddy logo textTech

המחלקה Scanner

חלק מהיחידה יסודות במסלול ה-Java של Coddy. שיעור 35 מתוך 73.

עד עכשיו אחסנו במשתנים ערכים שחשבנו עליהם. תוכניות בדרך כלל לא פועלות כך. אנחנו מקבלים ערכים ממקור חיצוני, למשל ממשתמש.

ב-Java, מקבלים קלט מהמשתמש באמצעות המחלקה Scanner. המחלקה הזו מספקת שיטות לקריאת סוגים שונים של קלט, כגון מספרים שלמים, מספרים בנקודה צפה ומחרוזות.

כדי להשתמש במחלקה Scanner, תחילה צריך ליצור מופע שלה ולקשר אותו לזרם הקלט הסטנדרטי System.in. כך עושים זאת:

Scanner scanner = new Scanner(System.in);

ברגע שיש לך אובייקט Scanner, אפשר להשתמש בשיטות שלו כדי לקרוא קלט.

הנה כמה שיטות נפוצות:

  • nextInt(): קוראת מספר שלם.
  • nextDouble(): קוראת מספר ממשי.
  • nextLine(): קוראת שורת טקסט (מחרוזת).

הנה דוגמה לקבלת קלט ממשתמש:

Scanner scanner = new Scanner(System.in);
System.out.print("Enter your age: ");
int age = scanner.nextInt();
System.out.println("Your age is: " + age);

בדוגמה הזו, התוכנית מבקשת מהמשתמש להזין את גילו, קוראת את המספר השלם באמצעות nextInt(), ואז מדפיסה אותו בחזרה למסוף.

אחרי שתסיים להשתמש ב־Scanner, מומלץ לסגור אותו באמצעות scanner.close() כדי לשחרר את המשאבים המשויכים אליו.

challenge icon

אתגר

מתחילים

כתבו תוכנית שמקבלת קלט מהמשתמש (את שמו), ואז מציגה Hello, ואחריו את השם שהמשתמש הזין.

לדוגמה, אם המשתמש מזין Bob, הפלט הצפוי הוא Hello, Bob.

תצטרכו:

  1. ליצור אובייקט Scanner כדי לקרוא קלט.
  2. לבקש מהמשתמש להזין את שמו בדיוק כך: Enter your name:
  3. לקרוא את שם המשתמש באמצעות המתודה המתאימה של Scanner.
  4. להציג בסוף את Hello, ואת המשתנה שבו השם נשמר.

נסו בעצמכם

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        // צור אובייקט Scanner
        Scanner scanner = new Scanner(System.in);
        
        // בקש מהמשתמש להזין את שמו
        
        
        // קרא את שם המשתמש
        
        
        // הדפס את הודעת הברכה
        
    }
}
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: קומפיילר Java אונליין