我已經嘗試過 Math.abs 和 if 陳述句,但沒有任何效果。我有點困惑。Java中的for回圈如何不接受負數,用戶不能輸入負數作為防御編程?采取以下代碼:
for(int i=0; i<arr.length; i ) {
System.out.print("Νο. " (i 1) ": ");
arr[i] = input.nextDouble();
}
uj5u.com熱心網友回復:
將讀取的值包裝在一個回圈中。在用戶輸入非負值之前不要退出回圈。例如..
for (int i=0; i<arr.length; i ) {
while (true) {
System.out.print("Νο. " (i 1) ": ");
arr[i] = input.nextDouble();
if (arr[i] >= 0) {
break;
}
System.out.println("Value cannot be negative");
}
}
uj5u.com熱心網友回復:
我想你對 Java 很陌生。歡迎來到 Java 的魔法世界 :)
根據你的代碼的樣子,一個更“專業”的方法是拋出一個例外:你可以谷歌一下并嘗試自定義你的代碼以及它對例外的反應。
另一方面,這似乎是一個簡單的專案,所以像
Double a = input.nextDouble();
if(a > 0){
System.out.println("No negative values allowed");
}else{
arr[i] = a;
}
可能就足夠了
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/456875.html
