Anonymní profil Marek Musil – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Marek Musil – Programujte.comAnonymní profil Marek Musil – Programujte.com

 

Příspěvky odeslané z IP adresy 178.255.174.–

Marek Musil
Java › Volání metody v jiné třídě b…
30. 5. 2015   #202577

#4 JirkaEr
Děkuji, to je přesně co jsem potřeboval. Včera večer mě to také napadlo a když jsem dnes viděl váš příspěvek a vyzkoušel fungovalo to. Myslel jsem, že je potřeba při každém volání psát new Strom, ale teď už chápu co to vlastně znamená a proč je logické použít to jen jednou.

Děkuji.

Marek Musil
Java › Volání metody v jiné třídě b…
29. 5. 2015   #202562

#2 Kit
Asi jsem to špatně vysvětlil. Když vytvořím strom přidáváním prvků

Připojen obrázek.

a poté dám vypisStromu() vše se vypíše. To samé ale potřebuji aby fungovalo ne pomocí klikání myší, ale pomocí textového rozhraní.

Připojen obrázek.

public void spustit()
    {
        int volba = -1;
        do{
            menu();
                                
            try{
                volba = scan.nextInt();
            }
            catch(Exception e){
                // vybere z klavesnice znak NL
                scan.nextLine();
            }

            switch (volba) {
                case 1:  prvni(); break;
                case 2:  druhy(); break;
                case 3:  treti(); break;
                case 4:  ctvrty(); break;
                case 5:  paty(); break;
            }
            
        } while(volba != 0);
        konec();
    }
private static void treti()
    {
        Strom str = new Strom();
        System.out.println("Strom obsahuje:");
        str.vypisStromu();
    }

Tento kód je špatně a potřebuji aby se po vytvoření hodnot spustila metoda v jiné třídě a udělala to co má.

public void vypisStromu()
    {
        vypisStromuDva(koren);
    }
    
    private void vypisStromuDva(Prvek oznaceny)
    {
        if(oznaceny == null) // výpis rodič, levý, pravý
        {
            return;
        }
        System.out.println(oznaceny.getHodnota());
        vypisStromuDva(oznaceny.getLevy());
        vypisStromuDva(oznaceny.getPravy());
    }
Marek Musil
Java › Volání metody v jiné třídě b…
29. 5. 2015   #202560

Dobrý den,

potřeboval bych poradit ohledně mého projektu na binární strom. Mám vytvořenou třídu Start, ve které je naprogramováno textové rozhraní a třídu Strom, která přidává prvky do stromu, odebírá, hledá hodnotu a vypisuje celý strom. Když chci spustit metodu (např. na vypsání stromu) ze třídy Start musím napsat: 

Strom str = new Strom();

System.out.println("Strom obsahuje:");

str.vypisStromu();

Bohužel se asi vytvoří zcela nový prázdný strom a nic nevypíše. Pokud už je strom hodnotami naplnění potřeboval bych, aby se metoda z jiné třídy volala a použila data z již vytvořeného stromu.

Předem děkuji za odpověď.

Marek Musil

 

 

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