abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
včera 22:22 | Nová verze

Tým vyvíjející hru SuperTuxKart vydal před týdnem novou alfa verzi přinášející víceuživatelský mód umožňující hrát hru po síti. Zatím jsou k dispozici pouze zdrojové kódy. Binární balíček by mohl vyjít během týdne.

Indiánský lotr | Komentářů: 0
včera 22:11 | Zajímavý článek

V Edici CZ.NIC vyšla kniha On-line ZOO seznamující děti předškolního a mladšího školního věku s nejčastějšími riziky spojenými s používáním Internetu. Kniha je určena především pedagogům, ale nejen jim. Knihu v elektronické verzi lze zdarma stáhnout ve formátu PDF (15,6MB).

Ladislav Hagara | Komentářů: 0
včera 21:33 | Zajímavý článek

Daniel Robbins informuje komunitu kolem linuxové distribuce Funtoo, že ve výchozím nastavení bude Funtoo používat LTS (Long-Term Stable) jádro 4.9 z Debianu. Klady vidí ve stabilitě pro serverové použití, ale také v méně problémech s ovladači třetích stran, například s ovladači od společnosti Nvidia.

D81 | Komentářů: 2
včera 20:44 | Pozvánky

Fedora 29 Release Party, oslava nedávného vydání Fedory 29 a 15 let Fedory, se uskuteční v pondělí 26. listopadu v Brně a v úterý 4. prosince a v Praze.

Ladislav Hagara | Komentářů: 0
včera 20:11 | IT novinky

Hodnota Bitcoinu, decentralizované kryptoměny, klesla pod 5 000 dolarů. Před 11 měsíci byla hodnota Bitcoinu téměř 20 000 dolarů.

Ladislav Hagara | Komentářů: 2
16.11. 17:00 | Nová verze

Simon Long představil na blogu Raspberry Pi novou verzi 2018-11-13 linuxové distribuce Raspbian určené především pro jednodeskové miniaturní počítače Raspberry Pi. Přehled novinek v poznámkách k vydání. Společně s Raspbianem byl aktualizován také instalační nástroj NOOBS (New Out Of the Box Software). Simon Long z novinek zdůrazňuje multimediální přehrávač VLC s hardwarovou akcelerací nebo vývojové prostředí pro Python Thonny ve verzi 3. Ke stažení jsou nově také lite a full obrazy Raspbianu. Raspbian Full opět obsahuje software Mathematica.

Ladislav Hagara | Komentářů: 0
16.11. 02:00 | Nová verze

Krátce po vydání Debianu 9.6 oznámil Tomáš Matějíček vydání verze 9.6 dnes již na Debianu založené živé linuxové distribuce Slax. Vedle vylepšení z Debianu je opraveno několik malých chyb. Opraveno bylo bootování pomocí PXE. Novinkou je skript s názvem pxe pro spuštění vlastního PXE serveru.

Ladislav Hagara | Komentářů: 0
16.11. 01:00 | Nová verze

Byla vydána beta verze Red Hat Enterprise Linuxu 8. Přehled novinek v příspěvku na blogu a v poznámkách k vydání.

Ladislav Hagara | Komentářů: 3
15.11. 13:44 | IT novinky

Nadace Raspberry Pi na svém blogu představila (YouTube) jednodeskový počítač Raspberry Pi 3 Model A+. Toto menší Raspberry Pi 3 lze koupit za 25 dolarů.

Ladislav Hagara | Komentářů: 0
15.11. 06:00 | Pozvánky

Dnes a zítra probíhá v Praze konference Internet a Technologie 18 pořádaná sdružením CZ.NIC. Sledovat ji lze online.

Ladislav Hagara | Komentářů: 0
Jak nejčastěji otevíráte dokumenty na počítači?
 (92%)
 (3%)
 (5%)
Celkem 131 hlasů
 Komentářů: 10, poslední včera 00:13
Rozcestník

Dotaz: kdy (ne)používat try

16.5. 13:41 Alex
kdy (ne)používat try
Přečteno: 279×
Ahoj,právě se učím Javu a chtěl bych vědět, jestli je dobré používat výjimku pro čtení ze vstupu Scnanneru metodou nextInt(). Myslím, že v Javě od Herouta jsem to tak viděl (neuspěje->chytne catch->smaže až do bílého znaku->čte další), ale někde jsem pak čet, že by se to s try nemělo přehánět a tady se to dá před načtením nejdřív otestovat pomocí hasInt(). Omlouvám se za hloupý dotaz, Java je můj první programovací jazyk a nerad bych si vytvářel nějaké špatné návyky hned na začátku. Díky za radu.

Odpovědi

16.5. 13:56 Sten
Rozbalit Rozbalit vše Re: kdy (ne)používat try
hasInt se používá, pokud budete nějak zpracovávat vstup, kde číslo není, případně pokud takový vstup je validní, ale vy jej jenom přeskakujete. Pokud budete zpracovávat jenom čísla a jiné věci na vstupu nemají být, tak try … catch je dobré řešení, protože je na první pohled vidět, že ne-čísla nejsou očekávaný vstup. V zásadě try … catch se používá pro zachycení situací, ke kterým by nemělo docházet, neměl by být součástí běžného běhu programu.
16.5. 14:01 Sten
Rozbalit Rozbalit vše Re: kdy (ne)používat try
Jinak i pro tohle pravidlo existují výjimky, třeba kontrola null se běžně dělá pomocí if místo try … catch (NullPointerException), protože těch kontrol může být hodně za sebou, co by znamenalo hodně zanoření a špatnou čitelnost.
16.5. 22:21 Kit | skóre: 42 | Brno
Rozbalit Rozbalit vše Re: kdy (ne)používat try
K zanoření vůbec nemusí dojít, pokud jsou tyto kontroly řazeny lineárně za sebou v jednom bloku try-catch. Čitelnosti to nejenže neubírá, ale dokonce vyloženě prospívá.
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
16.5. 14:11 Alex
Rozbalit Rozbalit vše Re: kdy (ne)používat try
Právě že se čte z klávesnice na výzvu zadejte N čísel v cyklu s try-catch. Žádná validace tam není. Smazat se to co není číslo musí, jinak by se to zacyklilo. Celé mi to zatím přijde dost složité a nelogické, když tam můžu použít hasInt() přímo v hlavičce toho cyklu.
16.5. 15:20 Sten
Rozbalit Rozbalit vše Re: kdy (ne)používat try
Pokud je výzva „Zadejte N čísel“, tak ne-čísla nejsou očekávaný vstup a ošetřovat je přes try … catch je IMO správně.
16.5. 15:25 Sten
Rozbalit Rozbalit vše Re: kdy (ne)používat try
Důvod pro výjimku je taky výkon, pokud použijete hasInt, tak to musí projít vstup a zjistit, jestli je to číslo, přičemž v dalším kroku (parsování) se prochází a zkoumá ten samý vstup znovu. Při použití výjimky se ten vstup prochází jen jednou, což je, pokud je tam číslo, rychlejší. Pokud nečekáte ne-čísla (rollback při výjimce je pomalý), tak je vhodné preferovat výjimky.
16.5. 16:25 Alex
Rozbalit Rozbalit vše Re: kdy (ne)používat try
Díky. A nebylo by pak lepší, pokud bude číslo zadávané vždy na nový řádek, použít FileReader() a parseInt()? Zdá se mi to jako nejčistší a asi i nejrychlejší v tomto případě.
16.5. 16:53 Alex
Rozbalit Rozbalit vše Re: kdy (ne)používat try
S tím, že by se zadávala ne-čísla, se počítá spíš tak, že by uživatel mohl odentrovat nějaké prázdné řádky. To mi třeba nepřijde až zas taková chyba, která by si zasloužila výjimku, ale nevím.
16.5. 22:25 Kit | skóre: 42 | Brno
Rozbalit Rozbalit vše Re: kdy (ne)používat try
Scanner bílé znaky při čtení čísel ve většině jazyků jednoduše přeskakuje.
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.