我想采用String输入来继续条件分支

时间:2017-12-11 06:02:17

标签: java string

我想从键盘输入一个字符串。但是当我运行这个程序时,没有选项可以输入字符串。我不知道我的错是什么。

我的代码是:

import java.util.Scanner;
public class Input_Program {
public static void main(String args[])
{
    Scanner in = new Scanner(System.in);
    int a,b;
    System.out.println("Enter the first number :");
    a=in.nextInt();
    System.out.println("Enter the second number :");
    b=in.nextInt();


    System.out.println("Value of first number:"+a);
    System.out.println("Value of second number:"+b);

    System.out.println("Do you want Add two numbers");
    System.out.println("To Continue: Type Yes");

    String S=in.nextLine();

    if("Yes".equals(S)||"yes".equals(S))
    {   
    int sum=a+b;
    System.out.println("Summation :"+sum);  
    }

}  
}

我想从此代码中获取输入。但它不起作用。

    String S=in.nextLine();

    if("Yes".equals(S)||"yes".equals(S))
    {   
    int sum=a+b;
    System.out.println("Summation :"+sum);  
    }  

此代码的结果是:

run:
Enter the first number :
2
Enter the second number :
3
Value of second number:3
Do you want the Summation of two numbers
To Continue: Type Yes

建立成功(总时间:9秒)

1 个答案:

答案 0 :(得分:2)

1)nextLine()根据https://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html"推进此扫描器超过当前行并返回跳过的输入"这不是你要找的行为。

2)似乎你是java新手,并且有命名约定。请不要使用大写字母

启动变量名称

3)我修正了你的缩进,并且还将输入概括为以y开头的任何内容。在将来,请确保以这种方式编写代码,因为它更容易分辨出if语句和循环等代码行。

import java.util.Scanner;
public class Input_Program {
    public static void main(String args[]) {
        Scanner in = new Scanner(System.in);
        System.out.println("Enter the first number :");
        int a = in.nextInt();
        System.out.println("Enter the second number :");
        int b = in.nextInt();


        System.out.println("Value of first number:" + a);
        System.out.println("Value of second number:" + b);

        System.out.println("Do you want Add two numbers");
        System.out.println("To Continue: Type Yes");

        String s = in.next();

        if(s.toLowerCase().contains("y")){   
            int sum=a+b;
            System.out.println("Summation :"+sum);  
        }

    }  
}