Při práci s čísly v programování je často nutné odvodit pouze zlomkovou část čísla. V programovacím jazyce Java existuje několik jednoduchých způsobů, jak tento problém vyřešit. V tomto článku se podíváme na tyto způsoby a podrobně je rozebereme.
Jedním z nejjednodušších způsobů, jak získat zlomkovou část čísla v Javě, je použití třídy Math. K tomu stačí přivolat metodu Math.round(), který Zaokrouhlí číslo na nejbližší celou hodnotu. Poté odečtením výsledné hodnoty od původního čísla získáme její zlomkovou část. Například pokud máme číslo 5.75, po použití metody Math.round (5.75) dostaneme číslo 6. Odečteme - li od čísla 5.75 číslo 6, dostaneme zlomek-0.75.
Dalším způsobem, jak získat zlomkovou část čísla, je použití třídy BigDecimal. Tato třída poskytuje přesnější výpočty s čísly, včetně práce s desetinnými místy. Pro získání zlomkové části čísla lze použít metodu BigDecimal.remainder() a určit přesnost na které znaménko po čárce chceme získat zlomkovou část. Například pokud máme číslo 5.75, po aplikaci metody BigDecimal.remainder (new BigDecimal ("1")) dostaneme číslo 0.75.
Jak vidíte, existuje několik jednoduchých způsobů, jak získat zlomkovou část čísla v Javě. Pomocí tříd Math nebo BigDecimal si můžete vybrat nejvhodnější možnost podle svých potřeb. Doufáme, že vám tento článek pomůže vyřešit tento problém a zlepšit vaše zkušenosti s programováním v Javě.
Když pracujete s čísly v Javě, je často nutné z čísla odstranit pouze zlomek. V tomto článku se podíváme na několik jednoduchých způsobů, jak tohoto cíle dosáhnout.
1. Pomocí operátora %
Jedním z nejjednodušších způsobů, jak odvodit zlomkovou část čísla, je použít příkaz % (zbytek dělení). K tomu je nutné provést dělení číslem 1 a získat zůstatek.
| Kód | Výsledek |
|---|---|
| double number = 3.14159; | double fractionalPart = number % 1; |
V důsledku provádění tohoto kódu bude proměnná fractionalPart obsahovat pouze zlomkovou část čísla number (0.14159).
2. Použití třídy DecimalFormat
| Kód | Výsledek |
|---|---|
| double number = 3.14159; | DecimalFormat decimalFormat = new DecimalFormat("0.#####"); String fractionalPart = decimalFormat.format(number); |
V důsledku provádění tohoto kódu bude proměnná fractionalPart obsahovat pouze zlomkovou část čísla number (0.14159).
3. Použití třídy BigDecimal
Pokud potřebujete přesnější práci se zlomkovými čísly a odvodit zlomkovou část na určitý počet desetinných míst, můžete použít třídu BigDecimal z balíčku java.math.
| Kód | Výsledek |
|---|---|
| double number = 3.14159; BigDecimal decimal = BigDecimal.valueOf(number); BigDecimal fractionalPart = decimal.subtract(decimal.setScale(0, RoundingMode.FLOOR)); | System.out.println(fractionalPart); |
V důsledku provedení tohoto kódu bude odvozena pouze zlomková část čísla number (0.14159).
Nyní znáte několik jednoduchých způsobů, jak odvodit zlomkovou část čísla v Javě. Vyberte si ten, který je pro váš úkol nejpohodlnější a použijte jej ve svém kódu.
Metoda Math.floor()
Syntaxe metody Math.floor () vypadá takto:
| Metoda | Popis |
|---|---|
| Math.floor (double číslo) | Vrací zaokrouhlenou na menší celek. |
double number = 3.456;double fraction = Math.floor(number);System.out.println("Дробная часть числа: " + fraction);
V tomto příkladu metoda Math.floor () Vrátí číslo 3.0, protože je největším celým číslem menším nebo rovným 3.456.
Metoda Math.floor () je užitečný, když je nutné zaokrouhlit číslo na menší stranu a získat jeho zlomkovou část.
Metoda Math.round()
double number = 9.75; double fraction = Math.round((number - Math.floor(number)) * 100) / 100;V uvedeném příkladu nejprve odečteme celou část čísla (9, v tomto případě) od samotného čísla. Poté výsledek vynásobíme 100, abychom získali dvouciferné číslo. Poté jej zaokrouhlíme na nejbližší celou hodnotu pomocí metody Math.round(). Nakonec výsledek vydělíme 100, abychom se vrátili k původnímu měřítku čísla.
Metoda Math.round () v Javě také podporuje zaokrouhlení na daný počet desetinných míst. Například:
double number = 9.7564; double roundedNumber = Math.round(number * 100) / 100.0;
V tomto příkladu vynásobíme číslo 100, abychom získali dvoucifernou hodnotu, poté ji zaokrouhlíme a výsledek vydělíme 100.0, abyste získali zaokrouhlené číslo se dvěma znaky za čárkou.
Metody formátování čísel
V Javě existuje několik metod pro formátování čísel a práci se zlomkovou částí. Níže jsou uvedeny některé z nich:
- Metoda DecimalFormat: tato metoda umožňuje nastavit vlastní formát čísla. Například pomocí DecimalFormat lze odvodit pouze zlomkovou část čísla.
- Metoda NumberFormat: tato metoda umožňuje formátovat číslo podle daného lokalizovaného formátu. Například pomocí NumberFormat lze odvodit číslo pomocí děličů tisíců a nastaveného počtu desetinných míst.
- Metoda Math.round: tato metoda zaokrouhluje číslo na nejbližší celé číslo.
- Metoda Math.floor: tato metoda zaokrouhluje číslo na nejbližší menší celé číslo.
- Metoda Math.ceil: tato metoda zaokrouhluje číslo na nejbližší větší celé číslo.
Využití operátorů
Abychom odvodili zlomkovou část čísla, můžeme rozdělit číslo na 1 a poté vzít zbytek z dělení. Pokud například máme číslo 3.14, můžeme vzít zbytek z dělení 3.14 na 1, abychom získali zlomek čísla.
Zde je příklad kódu, který to ukazuje:
double number = 3.14;double fractionalPart = number % 1; // Взятие остатка от деления на 1
V tomto příkladu bude proměnná fractionalPart obsahovat zlomkovou část čísla 3.14, tedy 0.14. Tuto zlomkovou část pak můžeme přenést na obrazovku pomocí metody System.out.println() .
API třídy BigDecimal
setScale(): tato metoda umožňuje nastavit přesnost a zaokrouhlení čísla. Má dva parametry: přesnost (počet znaků po čárce) a režim zaokrouhlení.
stripTrailingZeros(): tato metoda odstraňuje vedoucí nuly za desetinnou čárkou ve zlomkové části čísla.
divide(): tato metoda provede dělení dvou čísel a vrátí výsledek jako objekt BigDecimal.
multiply(): tato metoda provede násobení dvou čísel a vrátí výsledek jako objekt BigDecimal.
add(): tato metoda provede sčítání dvou čísel a vrátí výsledek jako objekt BigDecimal.
subtract(): tato metoda provede odečtení dvou čísel a vrátí výsledek jako objekt BigDecimal.
Rozhraní API třídy BigDecimal poskytuje různé funkce pro práci se zlomkovými čísly v Javě. Umožňuje přesné ovládání zlomkové části a různé výpočty s čísly s plovoucím bodem. Je důležité správně používat metody třídy BigDecimal podle požadavků vašeho projektu a úkolu.
Knihovna Apache Commons
Pokud hledáte flexibilnější a výkonnější řešení pro práci se zlomkovými čísly v Javě, pak může být Knihovna Apache Commons ideální volbou. Tato knihovna nabízí širokou škálu nástrojů pro práci s čísly, včetně operací zlomkových částí.
Chcete-li použít Apache Commons k získání zlomkové části čísla v Javě, musíte do svého projektu přidat závislost a importovat příslušné třídy:
import org.apache.commons.math3.util.Fraction;public class Main >
V tomto příkladu používáme třídu Fraction z balíčku org.apache.commons.math3.util pro výpočet zlomkové části čísla 5/2. Nejprve získáme čitatel a jmenovatel zlomku pomocí metod getNumerator() a getDenominator () a poté vypočítáme desetinnou část čísla vydělením čitatele jmenovatelem. Nakonec najdeme zlomkovou část čísla odečtením celé části čísla.
Díky Apache Commons můžete snadno a efektivně pracovat se zlomkovými čísly v Javě vzhledem k různým situacím a požadavkům. Seznamte se s dokumentací Apache Commons a zjistěte více o možnostech této výkonné knihovny.