如果任何事情是真的,我基本上想做一些事情,如果任何事情都是錯誤的,我想做同樣的事情但是倒退。我以這種方式嘗試過并且有效,但我想知道是否有更好的方法來做到這一點。只寫一次 doSomething 會很好。我還“手工”計算了 5000.799465,這看起來也不是很好。我很感激任何幫助,我正在使用 java。
if (whatever) {
for (double j = 0.0001; j < 5001; j = j * 1.1) {
doSomething(j);
}
} else {
for (double j = 5000.799465; j > 0.0001; j = j / 1.1) {
doSomething(j);
}
}
uj5u.com熱心網友回復:
似乎無論您嘗試做什么都需要 187 次迭代,所以讓我們從那里開始。
double j = 0;
for(int i = 0; i < 187; i ){
if (whatever) {
j = .0001 * Math.pow(1.1, i);
}
else {
j = .0001 * Math.pow(1.1, 186 - i);
}
doSomething(j);
}
這背后的邏輯是,如果whatever通過i從指數中減去為假,則您將以相反的順序進行。
現在您可以將 j 與您doSomething()的回圈一起使用,但您不必在回圈中使用古怪的數字,如果您必須重新撰寫代碼,您可以輕松更改它。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/399453.html
