BigDecimal vie toho dost, kukni si dokumentaciu
http://java.sun.com/javase/6/docs/api/java/math/BigDecimal.html a mozno
nieco najdes

Dalsi napad:
http://java.sun.com/javase/6/docs/api/java/text/NumberFormat.html :-)

ya

> A kdyz pouziju BigDecimal, tak je nejaka prima rychla cesta?
>
>
> On Mon, 18 Jun 2007 14:42:36 +0200, Ján Valkovič <[EMAIL PROTECTED]>
> wrote:
>
>> Roman Strobl  wrote / napísal(a):
>>> Ján Valkovič wrote:
>>>> Ahoj,
>>>> neviem, co sa ti viac hodi, mne sa viac paci napad so so
>>>> StringTokenizer-om, ale aj tento sposob ako rozdelit float na celu a
>>>> desatinnu cast mozno pomoze :-)
>>>>
>>>>     public static void main(String[] args) {
>>>>         float cena = new Float(28.836);
>>>>         int celaCast = (int)cena;
>>>>         float desatinnaCast = cena - new Float(celaCast);
>>>>
>>>>         System.out.println("Cena:" + cena);
>>>>         System.out.println("Cela cast:" + celaCast);
>>>>         System.out.println("Desatinna cast:" + desatinnaCast);
>>>>     }
>>>>
>>>> Vystup:
>>>>     Cena:28.836
>>>>     Cela cast:28
>>>>     Desatinna cast:0.83600044
>>>>
>>>> len neviem preco je desatinna cast 0.83600044 :-)
>>>>
>>> Protoze pracujes s realnymi cisly, ktere nemusi byt 100% presne :)
>>>
>>> Pokud vyzadujes lepsi presnost, jsou na to matematicke knihovny (viz
>>> BigDecimal apod.).
>>>
>>> -Roman
>>>
>> Aha, myslel som si, ze float ma vyssiu presnost, s double som to
>> neskusal, tam by asi ta nepresnost bola dalej :-)
>> S BigDecimal som sa uz stretol, vyraz ako ((a-b) * c)/d sa zapisuje
>> zhrubatakto ((a.sustract(b)).multiply(c)).divide(d) a to som tam este
>> nedaval |MathContext
>> <http://java.sun.com/j2se/1.5.0/docs/api/java/math/MathContext.html> a
>> test an delenie 0,uz nech vydaju jdk7 :-)
>>
>> ya
>> |
>>
>
>
>


Odpovedet emailem