java - 奇数/偶数程序不打印任何内容

标签 java loops logic

当我运行此命令时,不会打印任何内容,我尝试根据用户输入的内容打印一条消息,显示奇数或偶数。

import java.util.Scanner;
public class Questions {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("Your number");
        int number = input.nextInt();
        for (int i = 0; i > 0; i = +2) {
            if (number == i) {
                System.out.println("even");
            } else {
                System.out.println("odd");
            }
        }
    }
}

最佳答案

你的循环永远不会进入,因为你用 0 初始化 i 并且你的第一个测试是 i > 0 (并且你不想要 unary 2, = +2)。我也会使用格式化 IO。把它们放在一起,我想你想要类似的东西

int number = input.nextInt();
for (int i = 0; i < number; i++) {
    if ((i % 2) == 0) {
        System.out.printf("%d even%n", i);
    } else {
        System.out.printf("%d odd%n", i);
    }
}

如果您试图避免取模(并使用 2 的加法),您可以使用类似的方法进行优化

int number = input.nextInt();
for (int i = 0; i < number; i += 2) {
    System.out.printf("%d even%n", i);
    System.out.printf("%d odd%n", i + 1);
}

关于java - 奇数/偶数程序不打印任何内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31869549/

相关文章:

javascript - 在数组对象内循环

javascript - 短路逻辑或语句,与内联三元相结合

jquery - 使用 jquery 在选项选择的基础上添加新的表单输入字段

java - 如何避免代码中出现 java.lang.NullPointerException?

Raspi Linux 上的 JavaFX - 阶段没有窗口

java - 如何在启动时将 JVM 选项传递给 jshell

java - 在 Java 中重新创建 c# 方法

java - 在java中循环信用卡验证

以相同速度运行的 Javascript 游戏循环?

php - 基本 boolean 逻辑——如何仅在另一个条件为真时测试条件