У меня есть ArrayList
, который содержит 10 элементов и переменную int = 12
. Теперь я хочу подсчитать, сколько элементов находится в array
, и если они меньше 12
, чтобы начать отсчет снова с 0 и остановиться до индекса 2 и удалить его, пока у меня не будет одного элемента в моем массиве. Я попытался следующие:Извлечение элемента из ArrayList
int j = 12;
int l = 0;
// Here I check if j is less than array.size
while (j < array.size()) {
for (int i = 0; i < array.size(); i++) {
if (j == i + 1) {
array.remove(i);
}
}
}
// Here is for j greater than array.size
while (array.size() != 1) {
for (int i = 0; i < array.size(); i++) {
l = j - array.size();
if (l < array.size()) {
array.remove(l);
}
}
}
System.out.println(array);
UPDATE:
MyArray = {1,2,3,4,5,6,7,8,9,10};
int=12;
содержат только 10
элементы, но я хочу, чтобы удалить индекс с номером 12
, пока индекс 12
не существует, я должен начните отсчет снова с нуля, а число 12
находится в индексе 2
, поэтому я должен удалить индекс с номером 2
. Вторая итерация будет содержать только 9
элементы, и снова 12-9=3
, я должен удалить индекс с номером 3
, пока не будет иметь только один элемент в
Если вы всегда удалить элемент с индексом 2, вам все равно придется 2 элемента слева (индекс 0 и 1) –
не могли бы вы прояснить, чего вы пытаетесь достичь, пожалуйста? Я не в состоянии понять, что вы пытаетесь сделать! – ParkerHalo
Не могли бы вы дать нам немного понимания, почему это делается таким образом, если вы хотите иметь только элемент с индексом 1? Это выглядит действительно запутанным. – SomeJavaGuy