首页 > 解决方案 > 在3中找到最大的数字,我在最后一部分遇到了粗体字的问题

问题描述

import java.util.Scanner;
class CurrencyExchange_1 {
 
public static void main(String[] args){
    Scanner sc = new Scanner(System.in);
    System.out.print("Input any 3 numbers");
    int firstnumber = sc.nextInt();
    int secondnumber = sc.nextInt();
    int thirdnumber = sc.nextInt();

    //Finding the bigger number
    if (firstnumber > secondnumber);
    if (firstnumber > thirdnumber ) {
        System.out.println("Biggest number is " +firstnumber);

    } else if (secondnumber > firstnumber);
    if (secondnumber > thirdnumber); {
        System.out.println("Biggest number is " +secondnumber);

    } **else if** (thirdnumber > firstnumber);
    if (thirdnumber > secondnumber); {
        System.out.println("Biggest number is " +thirdnumber);
    }
  }
}

对于粗体部分,我最初只写了 < else > ,但它是一个错误。即使使用上面编写的代码,错误提示 <'else' without 'if'>。我不太确定哪里出了问题,因为当我完全删除最后一个 < "else" > 部分时,代码运行良好。我正在阅读其他问题的答案,当并非所有条件都满足时 <else {...}> 可以完美工作,但对我来说似乎不正确。请原谅我复杂的代码,因为我目前正在学习基础知识,我需要使用我目前所知道的来解决它,这只是编程的比较部分。

另外,是我还是有很多自动更正正在进行?当我清楚地编辑它们时,有些词会不断变回!

谢谢大家的好意!我终于明白我的错误了!想亲自感谢你们每一个人,但为了防止混乱,我将在这里写下来!

标签: javaif-statement

解决方案


我建议您使用&&Java 的if.

通过编写if(condition1 && condition2)条件 1 和条件 2 必须是true执行才能进入if.

现在您可以轻松地将代码重写为

import java.util.Scanner;
class CurrencyExchange_1 {
 
public static void main(String[] args){
    Scanner sc = new Scanner(System.in);
    System.out.print("Input any 3 numbers");
    int firstnumber = sc.nextInt();
    int secondnumber = sc.nextInt();
    int thirdnumber = sc.nextInt();

    //Finding the bigger number
    if (firstnumber > secondnumber && firstnumer > thirdnumber) {
        System.out.println("Biggest number is " +firstnumber);
    } else if (secondnumber > firstnumber && secondnumber > thirdnumber) {
        System.out.println("Biggest number is " +secondnumber);
    } else
        System.out.println("Biggest number is " +thirdnumber);
    }
  }
}

要回答您的实际问题,您不能使用该else语句的原因是因为您还写if(...); {}else if(...);。在 java 中,您不会;在 if 语句中编写行终止符。写吧if(...) {logic}

如果条件为真,则通过写入if(...);if(...){}将注意执行,因此该if语句是无用的。if如果满足语句中的条件,则应该始终有一些要执行的逻辑。


推荐阅读