Új hozzászólás Aktív témák
-
ArchElf
addikt
válasz
Yodafon
#1558
üzenetére
Persze, berakod egy try/catch-be, és a catch-ben elkapod az ArithmeticException kivételt:
private void szamol(){
try{
c=a/b;
if (c == Double.POSITIVE_INFINITY || c == Double.NEGATIVE_INFINITY) throw new ArithmeticException("Nullával osztottunk!");
}catch(ArithmeticException ex){
System.out.println(ex.getMessage());
}
}AE
-
ArchElf
addikt
válasz
Yodafon
#1556
üzenetére

1) Lebegőpontos számokkal számolva a nullával való osztás nem hiba, hanem helyesen VÉGTELEN-t hoz ki eredményül (angolul INFINITY). Integer osztás esetén a változó nem képes felvenni az INFINITY értéket, ezért fut hibára. Ha szeretnéd, hogy lebegőpontos osztásnál is dobjon hibát, akkor neked kézzel kell dobni valahogy így:if (c == Double.POSITVE_INFINITY) throw new ArithmeticException("Nullával osztottunk!");
2) Az e-t ott deklarálod a Catch-ben
Mivel az ArithmeticException nem biztos, hogy nullával való osztás eredménye, így inkább célszerű az e.getMessage() értékét kiiratni.AE
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- 2025 - A Steam legnépszerűbb és legkelendőbb játékai
- Kecskemét és környéke adok-veszek-beszélgetek
- OLED TV topic
- Hardcore café
- VGA kibeszélő offtopik
- Vigneau interaktív lokálblogja
- Boldog Új Évet Kívánunk 2026-ra!
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Sorozatok
- Le Mans Ultimate
- További aktív témák...
- ÁRGARANCIA!Épített KomPhone i9 14900KF 32/64GB DDR5 RAM RX 9070 XT 16GB GAMER PC termékbeszámítással
- magyar billentyűzet - 151 - Lenovo LOQ (15IAX9) - Intel Core i5-12450HX, RTX 4060
- Dell Precision 7560 Workstation i7-11850H 32GB RAM 1TB SSD Nvidia RTX A3000 6GB 1 év garancia
- MSI 14 Modern C12M FHD IPS i7-1255U 10mag 16GB 512GB SSD Intel Iris XE Graphics Win11 Garancia
- BESZÁMÍTÁS! ASUS H510M i5 11500 16GB DDR4 512GB SSD RTX 2070 Super 8GB Zalman T4 Plus be quiet! 600W
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

Mivel az ArithmeticException nem biztos, hogy nullával való osztás eredménye, így inkább célszerű az e.getMessage() értékét kiiratni.
