Mikuláš je tu! Získaj 90 % extra kreditov ZADARMO s promo kódom CERTIK90 pri nákupe od 1 199 kreditov. Len do nedele 7. 12. 2025! Zisti viac:
NOVINKA: Najžiadanejšie rekvalifikačné kurzy teraz s 50% zľavou + kurz AI ZADARMO. Nečakaj, táto ponuka dlho nevydrží! Zisti viac:

Diskusia – 6. diel - Primitívne dátové typy v Jave

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Posledné komentáre sú na spodnej časti poslednej stránky.
Avatar
Tomáš Duda
Člen
Avatar
Odpovedá na Daniel Holánek
Tomáš Duda:12.3.2018 19:12

Ahoj, chci se vyjádřit k tvému problému se jménem a to že pokud tvoje jméno obsahuje háčky či čárky tak to program započítá jako další znak.
Moje jméno je: Tomáš Duda = 12 znaků
Tomas Duda = 10 znaků

Avatar
Odpovedá na Tomáš Duda
Daniel Holánek:12.3.2018 21:28

Aha, děkuji. To by mě nenapadlo :)

Avatar
Odpovedá na Daniel Holánek
Josef Pospíšil:27.3.2018 14:08

Dle mého to tam chybí, abychom si to už ohlídali a mysleli na to sami.

Avatar
pocitac770
Tvůrce
Avatar
Odpovedá na Josef Pospíšil
pocitac770:27.3.2018 16:42

Ono je to hlavně proto, že se na to ptají hlavně ti co jenom bezmyšlenkovitě opisují kód, a nepřemýšlí nad tím + pořádně nečtou články, viz minulá lekce

Editované
Avatar
Jarick
Člen
Avatar
Jarick:3.4.2018 18:54

Ahoj. Předpokládám, že typ double umí pracovat i s celými čísli. Jaký mám tedy důvod použít např. int pro celá čísla, když mohu použít double pro celá i desetinná? Vyhnu se tím případnému parsování na double.

Avatar
Odpovedá na Jarick
Michal Šmahel:4.4.2018 14:00

Ahoj, vysvětlení může být vícero.

Jeden z důvodů je přehlednost. Když si to tak vezmeš, můžeš rovnou použít i String, do něhož lze uložit vše (po přeparsování). Samozřejmě to v běžném případě neuděláš, protože by s tím bylo moc práce. Také by se rovnou datové typy nemusely využívat vůbec (resp. by byly dynamické). To však v Javě (a jiných jazycích na podobné úrovni, např. C#) není za běžných podmínek možné. Samozřejmě to má svůj důvod - datové typy nevznikly jen tak. Pro tebe jako programátora slouží především proto, aby ses v kódu lépe vyznal a věděl, jaké chování můžeš od určitých proměnných očekávat. V proměnné typu int celé číslo a v jiné typu double reálné s velkým desetinným rozvojem (nebo celé číslo, které se rozsahově nevejde do long).

Poté jsou tu rozsahy a místo, které jednotlivé datové typy zabírají v paměti. Double (primitivní) bude určitě zabírat více místa než int, který má oproti němu daleko menší rozsah. Můžeš tak správnými datovými typy ušetřit místo v paměti.

Pokud si někdo vzpomene na další opodstatnění, budu rád, když mě doplní. Doufám, že jsem trochu pomohl.

Odpovedať
Nejdůležitější je motivace, ovšem musí být doprovázena činy.
Avatar
Jarick
Člen
Avatar
Odpovedá na Michal Šmahel
Jarick:6.4.2018 11:37

Díky. Ještě jsem čekal, za nějaký další názor. Pokud to tedy dobře chápu, tak na funkčnost to nemá vliv. Rozdíl je poznat až při tvorbě větších projektů, kvůli paměti. Je jasné, že je lepší se to učit se správnými typy proměnných. Jen jsem chtěl vědět, zda to má i nějaký hlubší smysl.

Avatar
Jakub Exner
Člen
Avatar
Jakub Exner:3.5.2018 0:13

Zdravím, moc rád bych se zeptal u příkladu Length(). Jak do kodu aplikuji i Trim() ? Rád bych aby mi to třeba u toho jména počítalo jen znaky bez mezer.
Zkoušel jsem první co mě napadlo a to zvlášť to naparsovat a toho použít Trim(). Hazí mi to chybu, takže je to blbost. Jsem začátečník. Díky moc.

System.out.prin­tln("Zadejte vaše jméno .");
String jmeno = sc.nextLine();
int a = Integer.parse­Int(jmeno.trim());
System.out.prin­tf("Délka vašeho jména je %d " , jmeno.length());

Avatar
Odpovedá na Jakub Exner
Miroslav Bejlek:22.5.2018 17:08

Ahoj, nejsem odborník, ale pokud ti jde jen o délku napsaného řetězce bez prázdných mezer, napsal bych to spíše:
System.out.prin­tln("Zadejte vaše jméno: ");
String jmeno = sc.nextLine()­.trim();
System.out.for­mat("Délka vašeho jména je: %d", jmeno.length());

sc.nextLine()­.trim() je jenom spojování příkazů, prosím o opravu, pokud to chápu špatně.

Díky

Avatar
Ondra-ovce
Člen
Avatar
Ondra-ovce:26.7.2018 8:38

Rozhodně mi to pomohlo, děkuji-vytvořil jsem ze znalostí 1-4 lekce tohle:
Jenom mi tam chybí složené závorky.

Editované
Posledné komentáre sú na spodnej časti poslednej stránky.
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zobrazené 10 správy z 184.