Problem s pridavanim poloziek do pola ... – Java – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Problem s pridavanim poloziek do pola ... – Java – Fórum – Programujte.comProblem s pridavanim poloziek do pola ... – Java – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Payne
~ Anonymní uživatel
37 příspěvků
22. 4. 2008   #1
-
0
-

Zdravim, riesim akurat problem ze nefunguju mi metody pop a push na vkladanie a vyberanie poloziek do pola v batohu...

mohli by ste mi niekto pomoct???



public class BackPack {
private static final BackPack backPack = new BackPack();
private static final int NUMBER_OF_ITEMS = 4;

private PortableItem[] items;


private BackPack() {
items = new PortableItem [NUMBER_OF_ITEMS];
}

public static BackPack getBackPack() {
return backPack;
}

public PortableItem[] getItems() {
return items;
}

public PortableItem pop(String name) throws WrongItemExistenceException {
PortableItem variable;

for (PortableItem i : items) {
if (i != null) {
System.out.println("pop rozny od null");
if (i.getName().equals(name)) {
variable = i;
i = null;
return variable;
}
}
}
throw new WrongItemExistenceException("Predmet " + name + " sa v batohu nenachádza ...");
}

public void push(Item item) throws WrongItemUsageException {
if (item instanceof NonPortableItem)
throw new WrongItemUsageException("Predmet " + item.getName() + " sa nedá vložiť do batohu ...");
else {
for (PortableItem i : items) {
if (i == null) {
System.out.println("push rozny od null");
i = (PortableItem) item;
return;
}
}
throw new WrongItemUsageException("V batohu nieje miesto na uloženie dalšieho predmetu ...");
}
}
}

pricom PortableItem je trieda, ktora ma 2 atributy - name a description a nim prisluchajuce gettery...

Nahlásit jako SPAM
IP: 147.232.177.–
Reklama
Reklama
jboss0
Newbie
22. 4. 2008   #2
-
0
-

Tenhle kód nechápu:

         variable = i;

i = null;
return variable;


a tohle uz vubec nedava smysl



if (i == null) {
System.out.println("push rozny od null");
i = (PortableItem) item;
return;
}


Jsem si jist ze to jsou presne duvody proc ti to nefunguje.

Nahlásit jako SPAM
IP: 89.176.51.–
Honza Štěrba [br] Weby: jansterba.com, thenoobonrails.blogspot.com [br] Projekty: Manitu.cz (beta), Boomy.cz, iKomentare.cz [br]
Payne
~ Anonymní uživatel
37 příspěvků
22. 4. 2008   #3
-
0
-

jednoduche, tym prvym mazem z batohu predmet, ale chcem ho aj vratit sucasne, taze tak...

no a toto druhe zase opacne, ked je dane miesto volne, tak tam dany predmet ulozim...

a inak uz viem de je chyba a veru v tom to nebolo, je to dobre napisane...

Nahlásit jako SPAM
IP: 147.232.177.–
MaSo0
Newbie
23. 4. 2008   #4
-
0
-

Neni to dobře napísané, podle mě to je kód, který stoji za houby...

Stačilo použít nějakou z dynamických stuktur, kterou nabizí API Javy. Pole je v tomto případě drbání se levou rukou za pravým uchem...:-P

Nahlásit jako SPAM
IP: 84.38.191.–
Real programmers use: copy con program.exe...
Payne
~ Anonymní uživatel
37 příspěvků
23. 4. 2008   #5
-
0
-

Je to dobre napisane, az na jednu vec... nema vyznam v danom pripade vytvarat kolekciu...

Nahlásit jako SPAM
IP: 147.232.177.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 23 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý