Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java程序中的帮助_Java_String - Fatal编程技术网

Java程序中的帮助

Java程序中的帮助,java,string,Java,String,我怎样才能得到键盘的字符串答案?不知道“键盘”在这里是什么意思,但这是错误的: import java.util.Scanner; public class Mal { public static void main(String[] args) { System.out.println("Welcome"); Scanner myinput = new Scanner(System. in ); System.out.println("M

我怎样才能得到键盘的字符串答案?

不知道“键盘”在这里是什么意思,但这是错误的:

import java.util.Scanner;
public class Mal {
    public static void main(String[] args) {
        System.out.println("Welcome");
        Scanner myinput = new Scanner(System. in );
        System.out.println("Make your choise. \n  1.Check a card number \n 2.Quit.");
        int choise = myinput.nextInt();
        switch (choise) {
        case 1:
            System.out.println("Enter your credit card number: ");
            break;
        case 2:
            System.out.println("Are you sure?");
            String answer = myinput.next();
            if (answer == "yes") {
                System.out.println("Byee ");
            } else {
                break;
            }
        default:
            System.out.println("Idiot!");
            break;
        }
    }
必须使用equals方法比较字符串:

answer == "yes"
或者它将不起作用。

您希望使用该方法而不是==运算符。原因是==运算符进行引用比较,而equals方法检查两个字符串值是否相同

以下是您应该尝试的更新代码:

answer.equals("yes")

字符串比较应该使用.equals()方法进行,而不是使用==运算符

=
操作符比较两个对象引用,以查看它们是否引用同一实例。
equals()
方法比较字符串对象中的字符。
i、 e

==
- 返回一个布尔值,如果 参考文献指向同一点 对象在内存中

.equals()
-返回该对象的equals()方法的值。如果
equals()
方法不存在,则 “对象”的equals方法 类被称为

你的代码应该是

if (answer.equals("yes")) {
   System.out.println("Byee ");
} else {
    break;
}

如果您想从控制台读取字符串值,我可以告诉您。为此,您可以使用BufferedReader。以下是它的语法:

if (answer.equals("yes")) {
                System.out.println("Byee ");
            } else {
                break;
            }
您需要使用以下方法导入BufferedReader和InputStreamReader:

BufferedReader br = new BufferedReader( new InputStreamReader( System.in));
str = br.readLine(); // String str;

打包

什么是键盘?这个程序的目的是什么?我猜它的意思是“键盘”。谢谢你的帮助。我也有一个问题。我想要一个程序,如果用户键入了与“是”不同的内容,则该程序将再次启动。如果您还有其他问题,请随意打开它,就像您启动了这个程序一样。如果不同的问题分开问,SO社区更愿意这样做。谢谢你的帮助。我也有一个问题。我想要一个程序,如果用户键入与“是”不同的内容,则可以将整个内容(从“做出选择”行到开关的末尾)放入“while(true)”块中;然后,当您退出开关而不退出时,您将返回并再次提示用户输入。请投赞成票/接受票:)
import java.io.*;