- Vegyes társaság jött a szombati hardverbuliba
- Százmilliárd dolláros AI-fegyverkezésbe kezdett az Amazon és a Google
- Így tüzelt el százbillió forintot az AI a héten
- Kétféle módon harcol a forró helyzetekkel szemben az ASUS új, M.2-es SSD háza
- Mérföldkő a szilárdtest akkuknál: fontos lépést tett a QuantumScape
Új hozzászólás Aktív témák
-
WonderCSabo
félisten
válasz
Aethelstone
#5472
üzenetére
Ez nem igaz. Nézzük csak meg pl. az ArrayList iterátorának a forráskódját:
public void remove() {
if (lastRet < 0)
throw new IllegalStateException();
checkForComodification();
try {
ArrayList.this.remove(lastRet);
cursor = lastRet;
lastRet = -1;
expectedModCount = modCount;
} catch (IndexOutOfBoundsException ex) {
throw new ConcurrentModificationException();
}
}Ez simán ráhív a ArrayList.this.remove(lastRet) -ra ami ténylegesen kitörli az elemet.
Vagy nézzük meg az Androidos implementációt:
public void remove() {
Object[] a = array;
int removalIdx = removalIndex;
if (modCount != expectedModCount) {
throw new ConcurrentModificationException();
}
if (removalIdx < 0) {
throw new IllegalStateException();
}
System.arraycopy(a, removalIdx + 1, a, removalIdx, remaining);
a[--size] = null; // Prevent memory leak
removalIndex = -1;
expectedModCount = ++modCount;
}Itt még egyértelműbben látszik, hogy az arraycopyval odébb mozgatja az egészet eggyel.
Az állításod már ott megbukott, hogy a "végén kikapja az elemeket". Milyen végén? Itt nincs semmi esemény, amihez ezt köthetni lehetne, in-place kell kitörölni az elemet.
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Újszerű Dell XPS 13 9310 - 13.4" FHD+ i7-1185G7 - 16GB - 1TB - Win11 PRO
- ÁRGARANCIA!Épített KomPhone Ryzen 5 5600X 16/32/64GB RAM RX 7600 8GB GAMER PC termékbeszámítással
- Sennheiser HD 560S vezetékes hifi fejhallgató
- 214 - Lenovo LOQ (15ARP9) - AMD Ryzen 7 7435HS, RTX 4050
- Dell Latitude E7250,12.5",HD,i5-5300U,8GB DDR3,256GB SSD,WIN10, LTE
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: Laptopműhely Bt.
Város: Budapest


