不是声明错误,非法启动类型

Ezw*_*bid 2 java

import java.util.*;

public class ulang {

    public static void main(final String[] args) {
        int a;
        int b;
        int sum;

        Scanner scan = new Scanner(System.in);
        System.out.println("Enter num 1: ");
        a = in.nextLine();
        System.out.println("Enter num 2: ");
        b = in.nextLine();
        {
            sum = a + b;
        }

        for (i = 0; i < 5; i++) {
            (sum >= 10)
                System.out.println("Congratulations");
            else
                System.out.println("Sum of the number is Less than 10");
        }

    }
}
Run Code Online (Sandbox Code Playgroud)

我在循环方面很弱,特别是在Java中.所以我需要对我的编码进行一些修改,但我不知道如何解决它.

编码应该像这样运行:用户需要插入2个数字,程序将计算两个数字的总和.之后,程序将确定总和是> = 10还是<10.如果总和> = 10,则会出现"祝贺",但如果<10,则会出现"小于10的数字之和".怎么解决?

Jon*_*eet 7

这是当前的问题:

(sum>=10)
Run Code Online (Sandbox Code Playgroud)

我相信你的意思是if:

if (sum>=10)
Run Code Online (Sandbox Code Playgroud)

另外:

  • 您正在尝试使用in变量,但会调用Scanner变量scan
  • Scanner.nextLine()返回String- 我怀疑你想要Scanner.nextInt()
  • 你的for循环使用一个尚未声明的变量.你可能意味着:

    for (int i = 0; i < 5; i++)
    
    Run Code Online (Sandbox Code Playgroud)

其他一些建议:

  • 循环迭代之间的总和不会改变...为什么你要循环?
  • 你有一个新的块,你正在计算总和,但没有明显的原因.为什么?
  • 在初始化时声明变量通常是个好主意,例如

    Scanner scan = new Scanner(System.in);
    System.out.println("Enter num 1: ");
    int a = scan.nextInt();
    System.out.println("Enter num 2: ");
    int b = scan.nextInt();
    int sum = a + b;
    
    Run Code Online (Sandbox Code Playgroud)
  • 鉴于您想要采取相同的基本操作(将消息写入屏幕),无论用户是否成功,您可以考虑使用条件运算符,如下所示:

    String message = sum >= 10 ? "Congratulations"
                               : "Sum of the number is Less than 10";
    System.out.println(message);
    
    Run Code Online (Sandbox Code Playgroud)

    然后,这将允许您重构循环以仅评估条件一次:

    String message = sum >= 10 ? "Congratulations"
                               : "Sum of the number is Less than 10";
    for (int i = 0; i < 5; i++)
    {
        System.out.println(message);
    }
    
    Run Code Online (Sandbox Code Playgroud)