如何根据用户选择打印星数

问题描述 投票:0回答:1

我一直在尝试PracticeIt问题并将其扩展一些-我陷入了困境。该代码将根据需要提供尽可能多的星星,但是我不知道如何让用户确定n的值。

我已经尝试将这两个代码行添加到这两个方法(main / starString)中:“扫描仪输入= new.Scanner(System.in);int n = input.next();“ [也input.nextInt]

但是代码将注意允许从控制台进行任何输入。更不用说我不知道​​我应该在哪里添加第二个println命令来实际打印此代码的结果...请帮助我

import java.util。*;公共类printStars {

public static void main(String[]args) {

    System.out.println("choose number and I wil show you 2^number stars");

}
    public static String starString(int n) {
        if (n < 0) {
            throw new IllegalArgumentException();
        } else if (n == 0) {
            return "*";
        } else {
            return starString(n - 1) + starString(n - 1);
        }
    }

}

java printing interactive
1个回答
0
投票

执行以下操作:

import java.util.Scanner;

public class Main {

    public static void main(String args[]) {
        Scanner in = new Scanner(System.in);
        System.out.print("Choose number and I wil show you 2^number stars: ");
        System.out.println(starString(in.nextInt()));
    }

    public static String starString(int n) {
        if (n < 0) {
            throw new IllegalArgumentException();
        } else if (n == 0) {
            return "*";
        } else {
            return starString(n - 1) + starString(n - 1);
        }
    }
}

示例运行:

Choose number and I wil show you 2^number stars: 5
********************************
© www.soinside.com 2019 - 2024. All rights reserved.