【问题标题】:BlueJ String Conditional ErrorBlueJ 字符串条件错误
【发布时间】:2014-03-22 03:31:12
【问题描述】:

我的 BlueJ 在条件语句 if 中运行了错误的行。我的程序是:

import java.io.*;
public class version_check
{
    public static void main(String args[])throws IOException
    {
        BufferedReader read=new BufferedReader(new InputStreamReader(System.in));
        System.out.println("Enter your BlueJ version");
        String version=read.readLine();
        if(version!="3.1.1")
        System.out.println("You need to upgrade your BlueJ version");
        else
        System.out.println("You have the latest BlueJ version");
    }
}

输出画面:

Enter your BlueJ version
3.1.1
You need to upgrade your BlueJ version

我犯了什么错误?

【问题讨论】:

  • 我想知道符号不等于(我知道你在上一条评论中告诉的链接)。
  • !version.equals("3.1.1")?就像!truefalse

标签: java bluej


【解决方案1】:

使用 .equals 比较字符串。

if(version!="3.1.1")   
        System.out.println("You need to upgrade your BlueJ version");  

if(!(version.equals("3.1.1")))   
        System.out.println("You need to upgrade your BlueJ version");  

【讨论】:

    【解决方案2】:

    我知道的字符串类型的唯一比较方法是: 1.>String_variable.equals(String_to_be_checked_with) 和 2.>String_variable.equalsIgnoresCase(String_to_be_checked_with)

    第二个忽略已经输入的字符串值的大小写...

    解决您的问题的最简单方法是:

    if(version.equals("3.1.1"))
    {
        System.out.println("You have the latest BlueJ version");        
    
    }
    else {
        System.out.println("You need to upgrade your BlueJ version");
    }
    

    【讨论】:

    • 写之前请先检查其他答案。这已经回答了。
    【解决方案3】:
         import java.io.*;
         public class version_check
          {
            public static void main(String args[])throws IOException
             {
              BufferedReader read=new BufferedReader(new 
         InputStreamReader(System.in));
           System.out.println("Enter your BlueJ version");
            String version=read.readLine();
           if(!version.equals ("3.1.1"))
              System.out.println("You need to upgrade your BlueJ 
           version");
        else
             System.out.println ("You have the latest BlueJ version");
                }
               }
    

    【讨论】:

    • 虽然这段代码 sn-p 可以解决问题,但including an explanation 确实有助于提高帖子的质量。请记住,您是在为将来的读者回答问题,而这些人可能不知道您提出代码建议的原因。
    猜你喜欢
    • 2019-01-31
    • 1970-01-01
    • 2017-03-05
    • 1970-01-01
    • 2014-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多