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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.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 - Fatal编程技术网

如何检查用户用Java编写的内容?

如何检查用户用Java编写的内容?,java,Java,我试着让它在用户写东西的时候启动程序,但是我不确定用户到底写了什么 这是我第一次尝试: import java.util.Scanner; public class Suhwag { public static void main (String args[]){ Scanner scanNer = new Scanner (System.in); System.out.println("Please write \"St

我试着让它在用户写东西的时候启动程序,但是我不确定用户到底写了什么

这是我第一次尝试:

import java.util.Scanner;

    public class Suhwag {
        public static void main (String args[]){
            Scanner scanNer = new Scanner (System.in);
            System.out.println("Please write \"Start\" to begin.");
            String stinky = "Start";
            if (stinky == scanNer);
但有了这个,我得到了错误信息:

Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
    Incompatible operand types String and Scanner
看到错误后,我尝试将扫描仪转换为字符串,如下所示:

import java.util.Scanner;

        public class Suhwag {
            public static void main (String args[]){
                Scanner scanNer = new Scanner (System.in);
                System.out.println("Please write \"Start\" to begin.");
                String stinky = "Start";
                String input = scanNer.nextLine();
                if (stinky == scanNer);
但仍然会出现相同的错误消息。有人知道我能做些什么让它工作吗

  • 您正在将字符串与扫描仪对象进行比较
  • 您应该使用equals方法来比较字符串的
  • 如果,则不需要在
    后面加分号(见下文)
  • 参考上一个代码段:

    if (stinky.equals(input)){
        //do something
    }
    

    在你的if声明中,你仍然将你的扫描仪与你的臭虫相比较

    将您的if语句更改为此

    if (input.equals(stinky)){<code here>}
    
    if(input.equals(臭)){}
    
    您以前的代码无法工作,因为您将扫描程序与字符串进行比较


    您正在尝试将扫描仪对象与字符串对象进行比较。首先,可以使用以下行输入字符串:

    String myString = scanNer.next()
    
    然后,将其与“开始”进行比较:


    在后一个代码区域,您在if声明中说:

    stinky == scaNer
    
    应该是

    stinky.equals(input)
    

    等于(输入),这是一个赋值,而不是一个比较。字符串对象应该用
    equals
    来比较,whops没听清楚,谢谢,(我真粗心)
    stinky.equals(input)