Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Zjištění obsahu Stack v Java

Aktivity
Avatar
jip123
Člen
Avatar
jip123:9.11.2019 20:41

Nemohu dosáhnout toho, aby se mně vypisoval obsah Stacku, který se mění v průběhu chodu programu. Mám to pro edukaci, a proto bych rád ten zásobník vypisoval.

Zkusil jsem: Již tři dny to zkouším nalézt na google, ale zatím jsem na moc nepřišel.

Chci docílit: Chci prostě znát obsah Stacku v libovolném místě kódu. Nejsem v Javě moc zběhlý, ale myslím si, že zkoušením nových věcí se něco naučím. Leč v tomhle případu zatím troskotám.

 
Odpovědět
9.11.2019 20:41
Avatar
jip123
Člen
Avatar
jip123:9.11.2019 20:51

Nemohu dosáhnout toho, aby se mně vypisoval obsah Stacku, který se mění v průběhu chodu programu. Mám to pro edukaci, a proto bych rád ten zásobník vypisoval.

Zkusil jsem: Již tři dny to zkouším nalézt na google, ale zatím jsem na moc nepřišel.

Chci docílit: Chci prostě znát obsah Stacku v libovolném místě kódu. Nejsem v Javě moc zběhlý, ale myslím si, že zkoušením nových věcí se něco naučím. Leč v tomhle případu zatím troskotám.

Zdroják je zde na
https://www.itnetwork.cz/…lighter/1246

 
Nahoru Odpovědět
9.11.2019 20:51
Avatar
Lubor Pešek
Člen
Avatar
Lubor Pešek:10.11.2019 11:28

Přiznám se, že si to čtu pozorně, ale stále netuším, o co ti jde. Respektive nerozumím větě: "Chci prostě znát obsah Stacku v libovolném místě kódu"
Co tím myslíš, na libovolném místě kódu?
Pokud by sis to chtěl vypisovat z jiné třídy, tak na ten stack vytvoř návratovou metodu a v daném místě kódu si ji vypisuj.

Jestli chceš vidět průběžné kroky interakce, tak použij debugger a nebo si v průběhu interakce vypisuj hodnoty na standardní výstup...
Možná jsem hodně natvrdlý, ale mohl bys ukázat ručně třeba na čísle 5, jaký výstup bys chtěl vidět?

Nahoru Odpovědět
10.11.2019 11:28
Existují dva způsoby, jak vyřešit problém. Za prvé vyhoďte počítač z okna. Za druhé vyhoďte okna z počítače.
Avatar
ZemiakSK
Člen
Avatar
ZemiakSK:11.11.2019 13:06

O čo ti ide ?
Chceš zistiť hodnoty kvôli ladeniu ?
Alebo ich cheš vypísať , použiť ?

Ak je to kvôli ladeniu , použi to čo ti poradil Lubor ( použi debugger , breakpoints atď)

Ak potrebuješ z hodnotami pracovať (napríklad zobrať item z prostriedka stacku) , tak to používaš zlú datovú štruktúru (stack je o tom , že vydíš iba to čo bolo pridané ako posledné)
Lepší by bol napr. ArrayList , ktorý umožnuje pridávať na koniec a súčasne prezerať jednotlivé prvky

Ale ak naozaj súrne potrebuješ použivať stack , tak tu je jednoduché riešenie

  • vytvor si 2 stacky (ten ktory chceš prezerať + pomocný)
  • presúvaj prvky z hlavného stacku do pomocného , počast tohto presunu ich môžeš použiť
  • keď skončíš , vrať všetky prvky z pomocného do hlavného
 
Nahoru Odpovědět
11.11.2019 13:06
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 4 zpráv z 4.