- Huawei Watch GT 6 és GT 6 Pro duplateszt
- Sony Xperia 1 V - kizárólag igényeseknek
- Fotók, videók mobillal
- Milyen okostelefont vegyek?
- iPhone topik
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Samsung Galaxy A55 - új év, régi stratégia
- Android alkalmazások - szoftver kibeszélő topik
- Samsung Galaxy Watch7 - kötelező kör
- Apple iPhone 16 Pro - rutinvizsga
Hirdetés
(használd a CYBSEC25PH kuponkódot további 20 ezer ft kedvezményért!)
Új hozzászólás Aktív témák
-
Gyuri16
senior tag
segitseget szeretnek kerni reflectionnel. suliba irok egy projektet, ami kulonbozo algoritmusokat hasonlit ossze (gyakorlatilag a futasi idejuket meri).
az objektumstruktura ilyen:
AbstractHeap<E>
|
BinaryHeap<E>
na most ha kontkretan van egy ilyenunk:
BinaryHeap<Integer>, akkor annak van egy olyan fuggvenye hogy Insert(Integer e)
namarmost en szeretnek egy tesztelo objektumot, aminek lesz egy referenciaja a heap-re, es megmondom neki melyik metodust (pl Insert) milyen paramerekkel hivja meg, o lefuttatja, es megmondja meddig tartott neki. itt egy kod, hogy mit probaltam eddig:public long Test(String name, Object[] args) {
long t1 = 0, t2 = -1;
Class<?>[] c = new Class[args.length];
for (int i = 0; i < args.length; i++)
c[i] = args[i].getClass();
t1 = System.nanoTime();
heap.getClass().getMethod(name, c).invoke(heap, args);
t2 = System.nanoTime();
return t2-t1;
}itt termeszetesen a heap egy private referencia. hasznalva igy lenne kb:
HeapTester<Integer> tester = new HeapTester<Integer>(new BinaryHeap<Integer>());
long ido = tester.Test("Insert", new Integer[] {4});namarmost itt az a problema (szerintem), hogy a heap.getClass() csak azt tudja, hogy BinaryHeap, es a <Integer> resz elveszik, igyaztan a getMethod mar azt mondja nem talalt olyan Insertet aminek Integer parameterei vannak (java.lang.NoSuchMethodException: heap.BinaryHeap.Insert(java.lang.Integer))
most ugy oldottam meg, hogy a HeapTester osztalyban szetirtam az osszes metodust, amit tesztelni akarok, es csak meghivom azt a fuggvenyt a referencian keresztul, es visszaadom meddig tart, de ez igy nagyon nem szep, illetve eleg komplikalt lenne igy komplikaltabb teszteket (mondjuk 2-3 fajta implementacion hajts vegre sok insertet, deletet stb. es mindegyiknel jegyezd meg az idoket). a kerdes az, hogyan lehetne ezt megcsinalni, hogy mukodjon ahogy en gondoltam?
koszi a segitseget elore is
sorry, kicsit hosszu lett, remelem azert ertheto a gond
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Elemlámpa, zseblámpa
- Mi történik a szemeddel, ha napi 8 órát monitort nézel? | Orvos válaszol
- Battlefield 6
- AMD Ryzen 9 / 7 / 5 10***(X) "Zen 6" (AM5)
- QNAP hálózati adattárolók (NAS)
- Hyundai, Kia topik
- Huawei Watch GT 6 és GT 6 Pro duplateszt
- Nintendo Switch
- exHWSW - Értünk mindenhez IS
- Milyen routert?
- További aktív témák...
- Ipollo v1 mini 300 Mhs olcsón
- Lenovo ThinkPad L15 Gen 1 i5 / 16GB RAM / 256GB SSD / FHD IPS / 4G modem
- Lenovo ThinkPad E15 Gen 3 Ryzen 5 / 16GB RAM / 256GB SSD / FHD IPS / 1GB dedikált VGA
- Lenovo ThinkPad X1 Yoga Gen 3 i7 / 16GB / 512GB SSD / 2 az 1-ben érintőkijelző / WQHD IPS
- Lenovo ThinkPad T14s i7 / 32 GB RAM / 256 GB SSD / Full HD IPS
- Okosóra felvásárlás!! Samsung Galaxy Watch 5 Pro, Samsung Galaxy Watch 6 Classic
- ÁRGARANCIA!Épített KomPhone i5 14600KF 32/64GB DDR5 RAM RTX 5070Ti 16GB GAMER PC termékbeszámítással
- BESZÁMÍTÁS! ASUS PRIME H510M i5 10400F 16GB DDR4 512GB SSD RX 6600 XT OC 8GB CHIEFTEC Libra 600W
- GYÖNYÖRŰ iPhone 12 Pro 128GB Pacific Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS2919
- HIBÁTLAN iPhone 13 Pro 128GB Alpine Green -1 ÉV GARANCIA - Kártyafüggetlen, MS2978
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest