給一個arraylist說[3,10,9,11,10,2,9],我需要編寫一些代碼來挑選序列[10,9,11,10]。從arraylist中挑選元素
這樣做的方法是通過從元素中創建一個區間,然後檢查下一個元素是否在該區間中。
FX:
從元件3,我們得到的時間間隔,3 * 0,80和3 * 1.20 = [2.4 - 3.6]。現在檢查下一個元素10是否在該區間內 - 不是。移動到下一個元素,10.
從10我們得到區間[8 - 12]。我們看到9,11和10在那個間隔裏,2不是那麼停!
我有:
import java.util.ArrayList;
import java.util.List;
public class HelloWorld {
public static void main (String[] args){
List<Integer> tops = new ArrayList<Integer>();
tops.add(3);
tops.add(10);
tops.add(9);
tops.add(11);
tops.add(10);
tops.add(2);
tops.add(9);
List<Integer> newtops = new ArrayList<Integer>();
for (int i = 1; i < tops.size()-1; i++){
double minValue = tops.get(i)*0.80;
double maxValue = tops.get(i)*1.20;
for (int k = i+1; k < tops.size()-1; k++){
if (tops.get(i) > minValue && tops.get(i) < maxValue){
newtops.add(tops.get(i));
}
else{
break;
}
}
}System.out.println(newtops);
}
}
輸出: [10,10,10,10,9,9,9,11,11,10]
預期輸出: [10, 9,11,10]
你做了什麼?發佈您嘗試過的代碼,如果您遇到問題,我們將竭誠爲您服務! –
你需要展示一些主動自己...分享你的嘗試代碼,我們將幫助你與它.. – WickeD
它不是我沒有試過,我只是沒有拿出一些值得展示的東西,但我會盡量給你東西:) – SoronSR