![](/img/trans.png)
[英]When i want to run this program instead of run as application it will shown like “run as configuration”. Why it will ask like this
[英]I want to ask on what's going on, whenever I try to run it, it keeps giving me run time error like this
我希望用戶為以下模式輸入行數,因此請標記我的錯誤。由於我是Java的初學者,因此也請向我推薦一些書。 必須顯示此圖案
**********
*********
********
*******
******
*****
****
***
**
*
這是一個代碼:
import java.util.Scanner;
class pattern{
public static void main (String agrs[]){
int n;
Scanner in =new Scanner(System.in);
System.out.println("enter the no. of rows in the pattern");
n= in.nextInt();
{
for(int i=0;i<n;i++)
{ for(int j=0; j<=i;j++)
System.out.print(" * ");
System.out.println(" ");
}}
}}
ERROR ......
enter the no. of rows in the pattern
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Scanner.java:909)
at java.util.Scanner.next(Scanner.java:1530)
at java.util.Scanner.nextInt(Scanner.java:2160)
at java.util.Scanner.nextInt(Scanner.java:2119)
at pattern.main(pattern.java:8)
如果您查看oracle站點上的文檔 ,則Exception的含義如下:
由掃描程序拋出,以指示檢索到的令牌與預期類型的模式不匹配,或者令牌超出預期類型的范圍。
輸入非整數輸入時將引發此異常。
您需要添加一個try / catch來捕獲該錯誤,並通知用戶錯誤的輸入。
例:
import java.util.Scanner;
public class PatternTest {
public static void main(String agrs[]) {
int n = -1;
do
{
try {
Scanner in = new Scanner(System.in);
System.out.println("enter the no. of rows in the pattern");
n = in.nextInt();
} catch (java.util.InputMismatchException e) {
System.err.print("Please enter only an integer.");
}
}while(n == -1);
for (int i = 0; i < n; i++) {
for (int j = 0; j <= i; j++)
System.out.print(" * ");
System.out.println(" ");
}
}
}
更新資料
int n = -1;
do
{
try {
Scanner in = new Scanner(System.in);
System.out.println("enter the no. of rows in the pattern");
n = in.nextInt();
} catch (java.util.InputMismatchException e) {
System.err.print("Please enter only an integer.");
}
}while(n == -1);
for (int rowNumber = n; rowNumber > 0; rowNumber--) {
for (int columnNumber = 0; columnNumber < rowNumber; columnNumber++)
System.out.print("*");
System.out.println(" ");
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.