【问题标题】:Given a number print the next three numbers给定一个数字,打印接下来的三个数字
【发布时间】:2019-12-24 00:24:47
【问题描述】:

我正在尝试打印任何给定数字的下三个数字,但它不适用于除 1-5 之外的任何其他数字。那么如何调整它以使其适用于任何给定的数字?

public static void main(String[] args) {
    Scanner inp = new Scanner(System.in);
    System.out.println("Enter your number");
    int num = inp.nextInt();
    nextNums(num);
}

public static void nextNums(int number){
    do{
        number++;
        System.out.println(number);
    }while(number < 5);
}

【问题讨论】:

    标签: java methods iteration


    【解决方案1】:

    您可以添加第二个变量来保存计数,而不是单个 number。喜欢

    public static void nextNums(int number){
        for (int i = 0; i < 3; i++) {
            System.out.println(number + i);
        }
    }
    

    或使用do while 之类的

    public static void nextNums(int number){
        int i = 0;
        do {
            System.out.println(number + i);
            i++;
        } while (i < 3);
    }
    

    或者,如果使用 Java 8+,则使用 IntStream 类似

    public static void nextNums(int number) {
        IntStream.range(number, number + 3).forEach(System.out::println);
    }
    

    但是我如何跳过第一个而只打印接下来的三个?

    喜欢

    public static void nextNums(int number){
        for (int i = 1; i < 4; i++) {
            System.out.println(number + i);
        }
    }
    

    public static void nextNums(int number){
        int i = 1;
        do {
            System.out.println(number + i);
            i++;
        } while (i < 4);
    }
    

    public static void nextNums(int number) {
        IntStream.range(number + 1, number + 4).forEach(System.out::println);
    }
    

    【讨论】:

    • 非常感谢!但是我如何跳过第一个并只打印接下来的三个?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-05
    • 1970-01-01
    • 1970-01-01
    • 2019-03-29
    相关资源
    最近更新 更多