NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
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 – Lekce 12 - ArrayList v Javě

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
Odpovídá na pocitac770
Jakub Krsička:13.10.2018 2:52

Díky za info, jak budu u PC tak to zkusím, to takhle cyklus while probíhá normálně a vždy ?

 
Odpovědět
13.10.2018 2:52
Avatar
pocitac770
Tvůrce
Avatar
Odpovídá na Jakub Krsička
pocitac770:14.10.2018 8:34

Každý cyklus má svá pravidla, jako například while cyklus, který se OPAKUJE, dokud je splněna podmínka. Důležité je ono opakuje, tzn, pokud je na začátku cyklu podmínka splněna, tak celý proběhne, kontrola probíhá opět když má začít nové opakování. Onen příkaz break je jenom taková pomůcka, zadní vrátka dalo by se říct, díky které můžeš ty pravidla "porušit". Stejně tak příkaz "continue;", který dělá to samé co "break;", ale narozdíl od něj neukončí cyklus, pouze ukončí ono opakování, a cyklus pokračuje jako by již program došel na konec bloku. Zjednodušeně, přeskočí zbytek kódu v cyklu a vrátí se zpět na začátek.

 
Odpovědět
14.10.2018 8:34
Avatar
Jakub Krsička:16.3.2019 17:40

zdravim potraboval bych znova radu s arraylistem.... chyba:

Exception in thread "main" java.lang.NullPointerException
        at databazefno.Databaze.pridatUzivatele(Databaze.java:38)
        at databazefno.Rozhrani.pridejTestUzivatele(Rozhrani.java:81)
        at databazefno.Rozhrani.spustitRozhrani(Rozhrani.java:20)
        at databazefno.DatabazeFNO.main(DatabazeFNO.java:19)

Rozhrani:

private void pridejTestUzivatele()
    {
        String [] poleJmen = {"Jakub","Veronika","Tobias","Pavel","Tomáš"};
        String [] poleLoginu = {"jak","ver","tob","pav","tom"};
        String heslo = "heslojeveslo";
        int [] poleVolba = {1,2,2,3,1};
        for (int i = 0; i < poleJmen.length; i++)
        {
            databaze.pridatUzivatele(poleLoginu[i], heslo, poleJmen[i], poleVolba[i]);//TADY TO PÍŠE CHYBU
        }
    }

Databaze:
ArrayList v databazi:

private ArrayList <Sestra> uzivatele;
private ArrayList <Pacienti> pacienti;
private int indexPac = -1;
private int indexUz = 0;
private boolean prihlaseny =false;
private String zprava = "";
private int typUzivatele;
public void pridatUzivatele (String login, String heslo, String jmeno, int volba)
{

    switch(volba)
    {
        case 1:
            Sestra s = new Sestra (login,heslo,jmeno);
            uzivatele.add(s);//TADY TO PÍŠE CHYBU
            zprava = String.format("Sestra byla přidána login: %s heslo: %s ", login,heslo);
            break;
        case 2:
            uzivatele.add(new Doktor(login,heslo,jmeno));
            zprava = String.format("Doktor byl přidán login: %s heslo: %s ", login,heslo);
            break;
        case 3:
            uzivatele.add(new Administrator(login,heslo,jmeno));
            zprava = String.format("Administrator byla přidána login: %s heslo: %s ", login,heslo);
            break;

    }

}

Sestra:

protected String login = "";
protected String jmeno = "";
protected String heslo = "";
private static int minimalniDelkaHesla = 6;
protected boolean prihlaseny = false;
private String typ = "sestra";



public Sestra (String login, String heslo, String jmeno)
{
    this.login = login;
    this.heslo = heslo;
    this.jmeno = jmeno;

}
 
Odpovědět
16.3.2019 17:40
Avatar
Odpovídá na Jakub Krsička
Matúš Olejník:16.3.2019 17:48

Nemáš inicializovaný List uzivatele. Tak ako inicializuješ iné objekty napr. Sestra s = new Sestra(); tak musíš niekde inicializovať aj ArrayList, uzivatele = new ArrayList(); pred tým ako budeš volať uzivatele.add(s) atď.

Editováno 16.3.2019 17:48
Odpovědět
+1
16.3.2019 17:48
/* I am not sure why this works but it fixes the problem */
Avatar
Odpovídá na Matúš Olejník
Jakub Krsička:16.3.2019 18:41

Jasně úplně jsem na to klasicky zapomněl a pak u toho sedím dvě hodiny a hledám chybu. :-D

 
Odpovědět
16.3.2019 18:41
Avatar
Roman Harna
Člen
Avatar
Roman Harna:27.5.2019 18:47

package alprog;
import java.util.Arrays;
import java.util.Arra­yList;

public class ALprog {

public static void main(String[] args) {

String[] poleStringu = {"První", "Druha", "Třetí"};
ArrayList<String> l = new ArrayList<Strin­g>(Arrays.asLis­t(poleStringu));
System.out.prin­tln(l.get(2));
String[] poleStringu2 = {"Ahoj", "Nazdar", "Cus"};
ArrayList<String> 2 = new ArrayList<Strin­g>(Arrays.asLis­t(poleStringu2));
System.out.prin­tln(2.get(2));
}

}

predposlední radek chyba - not a statement ";" expected
posledni radek: ")" a ";" expected

Nechapu, muze mi to nekdo vysvetlit??

 
Odpovědět
27.5.2019 18:47
Avatar
Roman Harna
Člen
Avatar
Odpovídá na Roman Harna
Roman Harna:27.5.2019 18:51

Uz to vim ta 2 je spatne :-###

 
Odpovědět
27.5.2019 18:51
Avatar
Jindřich Pšeničný:9.4.2020 7:27

Sorry, vím že je to tady o programování. Ale hned první věta mě bouchla do očí :

V minulé lekci, Gettery a settery v Javě, jsme si řekli něco o datu a času

To ne, o datu a času tam nebylo ani slovo.

Odpovědět
+2
9.4.2020 7:27
tak trochu jiný svět...
Avatar
Petr Švejda
Člen
Avatar
Petr Švejda:29.12.2020 15:55

Mám podezření, že už tyto kurzy dlouho nikdo nespravuje?

Odpovědět
29.12.2020 15:55
Nikdy neříkej, že něco nejde, protože se vždycky objeví někdo, kdo neví, že to nejde a udělá to.
Avatar
Lubor Pešek
Člen
Avatar
Lubor Pešek:1.4.2021 11:51

V minulé lekci, Gettery a settery v Javě, jsme si řekli něco o datu a času

?? není to copy/paste chybka?:)

Odpovědět
+1
1.4.2021 11:51
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.
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 10 zpráv z 73.