arraylistに[3,10,9,11,10,2,9]と言うと、シーケンス[10,9,11,10]を選ぶコードを書く必要があります。arraylistからの要素のピックアップ
これを行う方法は、要素から間隔を作成し、次の要素がその間隔にあるかどうかをチェックすることです。
FX:我々は間隔を得る要素3から
、* 0,80 3,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
それは私がhavent試して、私はhaventだけまだ価値があると出てくるが、何か: – SoronSR