如何打印出一个数组?

时间:2014-08-08 03:14:33

标签: java arrays

好的,这是一个代码,应该能够打印出一个数组,并说出数字0-9通过扫描仪输入了多少次,如果给出一个负数,关键是停止程序并打印所有内容out,并且你可以看到这个程序非常好,并且我能够用数字打印出所有的数组,但是我想知道如何打印出我的数组作为" x"而不是数字?让我们说数字5被输入5次它应该打印出来:"数字5出现xxxxx次,同样如果数字1被按下1次,它应该打印出来"数字1出现x次。有关如何做到这一点的任何提示/解决方案?提前致谢。 (编辑idk为什么星星图标会消失,但我们可以说我想要x代替。

import java.util.Scanner;
public class q31{
    public static void main(String args[]) {
        System.out.println(1 + ":" + "\t" + "Integer 0-9");
        Scanner keyboard = new Scanner(System.in);

        int[] a = new int [10]; 
        int counter=0;
        int input;
        input=keyboard.nextInt(); 
        boolean exit=true;

        while (exit==true) {
            counter++; 
            System.out.println((counter+1)+":" + "\t" + "Integer 0-9");
            if (input>-1 && input <10){ 
                a[input]++;
            }

            input=keyboard.nextInt();
            if(input<0) {
                exit=false; 
            for(int i = 0; i < a.length; i++)
            {
                System.out.println("the number " + i + " appears " + a[i] + "times"); 
            }
        }
    }
}

2 个答案:

答案 0 :(得分:2)

尝试更改

System.out.println("the number " + i + " appears " + a[i] + "times");

System.out.print("the number " + i + " appears ");
for(int n = 0; n < a[i]; n++)
    System.out.print("x");
System.out.println(" times");

答案 1 :(得分:1)

您需要使用数组a[i]中位置i处的数字来控制循环。循环可以为每次迭代执行System.out.print("x")

下面有一些代码 - 我已经把循环的实现留给了你,因为我猜这可能是作业。

System.out.print("the number " + i + " appears ");

//create loop
    System.out.print("x");
// end loop

System.out.println(" times");