4-1中的代碼
我運行了4-1中的代碼,運行了好幾次,結果都是
能量總和: 100000.00
能量不守恒的情況一直都未出現。
后來發現是EnergySystem中
System.out.printf("從盒子%d到盒子%d轉移了%10.2f",from,to,amount);oxes[to] += amount;
這兩行代碼顛倒了順序。改好后就出現了不守恒的情況了。
為什么這兩行代碼順序不同,運行結果就不同呢?
我運行了4-1中的代碼,運行了好幾次,結果都是
能量總和: 100000.00
能量不守恒的情況一直都未出現。
后來發現是EnergySystem中
System.out.printf("從盒子%d到盒子%d轉移了%10.2f",from,to,amount);oxes[to] += amount;
這兩行代碼顛倒了順序。改好后就出現了不守恒的情況了。
為什么這兩行代碼順序不同,運行結果就不同呢?
2016-12-06
舉報
2016-12-08
不守恒的原理視頻中已經說的很清楚了,不守恒其實已經存在了,只是你把這兩個寫顛倒之后,不是此個線程的正確表示狀態。
就比如int i = 100; ? ? 你先輸入的i = i - 1; ?還是先輸入System.out.printfln(i)的區別
如果先寫i = i - 1 ,再輸出i那么i=99
如果你先輸出i,那么打印輸入當然是i = 100。之后再執行i = i - 1。執行結果其實已經是i = 99了,但是你打印輸出的是i = 100.