如何更改代码,以便在有第二个输入时将其添加到我的直方图中?

时间:2019-01-29 04:27:28

标签: java

public class Histogram {
    private static Scanner input;
    public static void main(String[] args) {
        input = new Scanner(System.in);
        String lettersInput = input.nextLine();
        lettersInput=lettersInput.toLowerCase();
        String alphabet = "abcdefghijklmnopqrstuvwxyz";
        int[] count = new int[alphabet.length()];
        for(int x = 0; x <  lettersInput.length();x++){
            int letter = alphabet.indexOf(lettersInput.charAt(x));
            if(letter < 0){
                continue;
            }
            count[letter]++;
        }

        for(int x = 0; x < count.length; x++){

            System.out.print(String.format("%s" + ":" +"%s", alphabet.charAt(x), new String(new char[count[x]]).replace('\0','*')));
            System.out.println();
            if(count[x]< 1) {
                continue;
            }
        }
    }
}

现在,它仅使其接受一个字母输入,并且如果您要放置另一组字母,则会创建一个新的直方图。

1 个答案:

答案 0 :(得分:1)

一个简单的解决方案:创建一个类似 makeHistogram()的方法,该方法将一个字符串并打印出该直方图(基本上,您只是将一些代码从main方法移至该新方法中)。

然后将一个while循环放入您的main方法中。在该循环的主体内,您首先要求用户输入另一行文本,然后调用新方法并将该输入传递给它。