本文目錄一覽:
- 1、關於java運行問題。如下請大家幫忙分析一下吧?
- 2、求幫忙分析一下java代碼
- 3、請幫忙分析下這個java程序 用折半查找法判斷一個從鍵盤上輸入的數是否在某個數組中
- 4、java學習中遇到問題,請過來人幫忙分析一下
關於java運行問題。如下請大家幫忙分析一下吧?
雖然ls有人說這問題很學究,不過我覺得還是值得討論的
說實話,在看到你這個題目的時候,我和你想的結果是一樣的
但是運行結果確實是0,0,0,0,0
思考了一下,我覺得是因為java只有值傳遞沒有引用傳遞造成的
num = num++;
這道題我能不能看成這樣
num = 0;
temp = 0;
num = temp ++;
?
根據java內存的分配情況來看,這個和num = num++是相等的。
那麼這個就可以看成
num = temp;
temp = temp+1;
因為java是值傳遞
所以temp的改變並不會最終傳遞給num
所以這題的結果是
num = num;
temp = num +1;
所以num永遠是0
以上僅僅是我個人的看法,希望高手指點
求幫忙分析一下java代碼
從控制台可以輸入數據,回車執行,br.readLine()會讀取這行數據,如果你輸入的數據不是數字會報異常。如果輸入的數據大於1,這會跳出while循環,執行for循環,計算sum=i + sum的值。
請幫忙分析下這個java程序 用折半查找法判斷一個從鍵盤上輸入的數是否在某個數組中
我做了修改,現在沒有問題了, package lianxi; import java.util.*; public class SortFind { public static void main(String args[]) { int n = 0, low, high, middle; System.out.println(“從鍵盤輸入一個整數,程序將判斷該數是否在一個數組中”); int a[] = { 12, 32, 9, -23, 45, 6, 46, 90, 123, 19, 34 }; Arrays.sort(a); for (int i = 0; i a.length; i++) { System.out.print(a[i] + ” “); } Scanner reader = new Scanner(System.in); while (reader.hasNextInt()) { n = reader.nextInt(); low = 0; high = a.length – 1; middle = (low + high) / 2; while (low = high) { System.out.println(middle); if (n == a[middle]) { System.out.println(n + “是數組中的元素”); break; } else if(n a[0] || n a[high]) { System.out.println(n + “不在數組中”); break; } else if (n a[middle]) { high = middle – 1; middle = middle-1; } else if (n a[middle]) { low = middle + 1; middle = middle+1; } } System.out.println(“\n可繼續輸入整數,或輸入非整數結束程序”); } System.out.println(“你輸入的數據不是整數”); } } 記得採納
java學習中遇到問題,請過來人幫忙分析一下
你那邊附近有北大青鳥培訓吧,去那裡培訓一年半,你有C語言基礎,相信學起來應該很快,到時候你可以選擇做C#還是Java開發
原創文章,作者:RZTB,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/149085.html