NOVINKA: Získej 40 hodin praktických dovedností s AI – ZDARMA ke každému akreditovanému kurzu!
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 4 - Hrací kostka v Javě - Zapouzdření, konstruktor a Random

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
Roman
Člen
Avatar
Roman:24.10.2017 5:39

Od Javy 1.7 muzes vyuzit:

import  java.util.concurrent.ThreadLocalRandom;
ThreadLocalRandom.current().nextInt(min, max + 1);
 
Odpovědět
24.10.2017 5:39
Avatar
MiroslavP
Člen
Avatar
MiroslavP:10.3.2018 17:15

Poutavé, názorné, skvělé :-)

 
Odpovědět
10.3.2018 17:15
Avatar
Mino19
Člen
Avatar
Mino19:12.7.2018 16:18

Mám problém,stále dostanem výpis ako je na obrázku a nie to čo mám dostať.Viem ze mi tam chýba @Override ale ak to tam vložím tak vyhadzuje chybu.

TahovyBoj :

package tahovyboj;


public class TahovyBoj {


    public static void main(String[] args) {


        Kocka seststenna = new Kocka();
        Kocka desatstenna = new Kocka(10);


        System.out.println(seststenna);
        for (int i = 0; i < 10; i++){
            System.out.print(seststenna.hod() + " " );
        }

        System.out.println("\n\n" + desatstenna);
        for (int i = 0; i < 10; i++){
            System.out.print(desatstenna.hod() + " ");
        }


    }

}

Kocka :

package tahovyboj;

import java.util.Random;
import java.lang.Object;


public class Kocka {

    private Random random;
    private int pocetStien;


    public Kocka() {
    pocetStien = 6;
    random = new Random();
    }

    public Kocka(int PocetStien){
        this.pocetStien = PocetStien;
        random = new Random();
    }




    public int vratPocetStien() {
        return pocetStien;




  }

     public int hod(){
        return random.nextInt(pocetStien) + 1;
    }

     public String toSting(){
        return String.format("Kocka so %s stenami ", pocetStien);

     }
}
 
Odpovědět
12.7.2018 16:18
Avatar
Odpovídá na Mino19
Matúš Olejník:12.7.2018 17:06

@Override anotácia ti len pre prehľadnosť označuje že ideš zmeniť správanie nejakej metódy ktorú si zdedil. Keďže ti však vyhadzuje chybu keď tú metódu tak označíš je to znak toho že si ju nezdedil a v tvojom prípade to je skutočne tak pretože originálna metóda ktorú si zdedil má názov toString a tvoja sa volá toSting - máš tam preklep chýba ti tam "r". Stačí ju premenovať a môžeš pridať aj anotáciu.

Odpovědět
12.7.2018 17:06
/* I am not sure why this works but it fixes the problem */
Avatar
Mino19
Člen
Avatar
Odpovídá na Matúš Olejník
Mino19:12.7.2018 17:10

Och..ďakujem

 
Odpovědět
12.7.2018 17:10
Avatar
Jiří S.
Tvůrce
Avatar
Jiří S.:28.12.2018 18:14

Jsem z toho blbej :-? , ale tak třeba to postupem času jak budu více zkušenější poberu :-) .

 
Odpovědět
28.12.2018 18:14
Avatar
Vít Vlach
Člen
Avatar
Odpovídá na Jiří S.
Vít Vlach:28.12.2018 20:31

A co nechápeš? :-)

Odpovědět
28.12.2018 20:31
My code doesn't work. Let's change nothing and run it again.
Avatar
Jiří S.
Tvůrce
Avatar
Odpovídá na Vít Vlach
Jiří S.:29.12.2018 16:56

Asi té metodě random. Četl jsem sice o javě knížku ale tohle tam nebylo. Taky je pravda že včera jsem byl už unavený a tolik jsem se na to nesoustředil, takže to bude asi i tím. :D

 
Odpovědět
29.12.2018 16:56
Avatar
Marcel Mares
Člen
Avatar
Marcel Mares:18.7.2019 11:41

Dobrý den, já mám takový nedůležitý dotaz, proč se v : return String.format("Kos­tka s %s stěnami", pocetSten) nepoužije místo %s radši %d, když pocetSten je int, to znamená že obsahuje jen celá čísla a v základech Java jsem se učil, že %s se používá pro řetězce String, %d pro celá čísla a %f pro desetinná čísla...předem děkuji za odpověď...

 
Odpovědět
18.7.2019 11:41
Avatar
Marcel Mares
Člen
Avatar
Odpovídá na Marcel Mares
Marcel Mares:19.7.2019 12:18

tak jsem si dosadil všechny 3 typy, v případě %f program proběhl, ale konzole vypsala chybu, že se nejedná o desetinná čísla, při %d vše proběhlo v pořádku a obě kostky generovaly 10 náhodných čísel, stejně jako za použití %s, znamená to tedy, že v javě dochází k automatické skryté konvezi celých čísel na řetězec pomocí String.valueOf, proč to ale také ta konverze nefunguje pro ty desetinné čísla ...

 
Odpovědět
19.7.2019 12:18
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 138.