簡體   English   中英

如何從掃描儀庫中讀取任何用戶輸入?

[英]How can I read any user input from the scanner library?

我對Java很陌生,所以不要認為這是個白痴。 無論如何,我一直在嘗試制作一個可以從控制台讀取特定字母的程序,然后確定要使用的操作,比如說要添加。 但是,我無法通過If循環來讀取決定使用哪個運算符的變量,下面是代碼,請提供幫助。

import java.util.Scanner;


class Main {

  public static void main(String[] args) {
       Scanner user_input = new Scanner( System.in );
        int number;
        String function;
        System.out.println("What Do You Want to Do? (a to add; s to" + 
       " subrtact; d to divited; m to multiply, and sq to square your nummber.)" );
        function = user_input.next();
        if (function == "sq"){
            System.out.print("Enter your number: ");
            number = user_input.nextInt();
            System.out.print(number * number);
        } else {
            System.out.println("Unidentified Function!");
  }
}
}

(我將說明簡化了,以使其適合)。

這只是一個示例,可以幫助您正確地開始工作。

import java.util.Scanner;

public class Example {

    public static void main(String[] args) {
        Scanner user_input = new Scanner(System.in);
        int num1, num2, result;

        System.out.println("What Do You Want to Do? (a to add; s to"
                + " subrtact; d to divited; m to multiply, and s to square your nummber.)");

        String choice = user_input.next();

        // Add
        if (Character.isLetter('a')) {
            System.out.println("Enter first number: ");
            num1 = user_input.nextInt();
            System.out.println("Enter second number: ");
            num2 = user_input.nextInt();

            result = num1 + num2;
            System.out.println("Answer: " + result);
        }
    }
}

如果在掃描儀上使用hasNext(),它將等待輸入,直到停止程序為止。 另外,使用equals()是比較字符串的更好方法。

while(user_input.hasNext()){
                function = user_input.next();
                if (function.equals("s")){
                    System.out.print("Enter your number: ");
                    number = user_input.nextInt();
                    System.out.print(number * number);
                } else {
                    System.out.println("Unidentified Function!");
                }
            }
 Scanner s = new Scanner(System.in);
    String str = s.nextLine();
int a=s.nextInt();
int b=s.nextInt();
    if(str.equals("+"))
    c=a+b;
    else if(str.equals("-"))
    c=a-b;
    else if(str.equals("/"))
    c=a/b;
    // you can add operators as your use
    else
    System.out.println("Unidentified operator" );

希望對您有所幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM