Java:程序将在某种情况下停止,然后按任意键继续...它将继续循环

时间:2017-01-25 15:11:13

标签: java

问题是我将打印键盘中的所有字符,但每次计数10时程序将停止然后按任意键继续..序列将继续..到目前为止,这就是我所做的。

public class AsciiDisplay
{
    public static void main (String [] args)
    {

        for (int i = 0; i<=255; i++)
            System.out.printf("%d\t%c\n",i,i);
    }
}

3 个答案:

答案 0 :(得分:0)

public static void main(String a[]){
        int count = 0;
        for (int i = 0; i<=255; i++){
            if(count == 10){
                System.out.println("Press \"ENTER\" to continue...");
                Scanner scanner = new Scanner(System.in);
                scanner.nextLine();
                count = 0;
            }else{
                System.out.printf("%d\t%c\n",i,i);
                count++;
            }


        }
    }

答案 1 :(得分:0)

逻辑: - 维护一个计数器,每次打印一个字符时都会增加一个计数器,每增加10个增量,它就会停止供用户提供输入,因为扫描仪方法会阻塞。

count%10 == 0表示该数字完全可被10整除。

public static void main(String[] args){
        {
            int count=0;
            Scanner scanner = new Scanner(System.in);
            try{
            for (int i = 0; i<=255; i++){
                System.out.printf("%d\t%c\n",i,i);
                 count++;
                 if((count%10)==0){
                        System.out.println("Click to continue...");

                        scanner.nextLine();
                }
               } 
              }
        finally{
            scanner.close();
        }
    }
}

虽然上面的代码不是通过键盘输入来打印字符。

答案 2 :(得分:0)

也许,这是一个很好的解决方案,因为我理解,你想要按任意键,打印10个数字后从0开始。对吧?

import java.util.Scanner;

public class Test {

  private static final Scanner SCANNER = new Scanner(System.in);

  public static void main(String a[]) {
    int count = 0;
    for (int i = 0; i <= 255; i++) {
        count++;
        if (count % 10 == 0) {
            System.out.printf("%d\t%c\n", i, i);
            System.out.println("Press \"ENTER\" to continue...");
            SCANNER.nextLine();
            count = 0;
        } else {
            System.out.printf("%d\t%c\n", i, i);

        }
    }
  }
}