AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

[Java]BigDecimal - wie geht das?

Ein Thema von glkgereon · begonnen am 16. Sep 2004 · letzter Beitrag vom 17. Sep 2004
Antwort Antwort
Benutzerbild von glkgereon
glkgereon

Registriert seit: 16. Mär 2004
2.287 Beiträge
 
#1

[Java]BigDecimal - wie geht das?

  Alt 16. Sep 2004, 19:38
hi

also ich hab in java den typ BigDecimal entdeckt
nun stellt sich folgendes problem:

ich hab zwei integer (event. auch BigInteger), und dann will ich sagen:

BigDec = 4 * a / b;

aber da meldet er immer fehler...
wie kann ich dem einen wert zuweisen, wie ihn als string wieder rausholen etc?
»Unlösbare Probleme sind in der Regel schwierig...«
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: [Java]BigDecimal - wie geht das?

  Alt 16. Sep 2004, 21:23
Besorg dir das Manual von http://java.sun.com und kuck dir die Felder und Methoden von der Klasse an. So wie du es schreibst, kann es nicht funktionieren, da Java keine Operatorüberladung kennt und BigInt kein primitiver Typ ist.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Benutzerbild von glkgereon
glkgereon

Registriert seit: 16. Mär 2004
2.287 Beiträge
 
#3

Re: [Java]BigDecimal - wie geht das?

  Alt 17. Sep 2004, 14:37
hmmm...die einzige methode, die nach dieser seite
http://java.sun.com/j2se/1.5.0/docs/...igDecimal.html
und meinem verständnis dafür ist, einem BigDecimal einen double zuzuweisen, ist diese:

static BigDecimal valueOf(double val)
Translates a double into a BigDecimal, using the double's canonical string representation provided by the Double.toString(double) method.

nur gibt es die bei mir nicht

ich hab die beiden:
BigDecimal.value(long val)
BigDecimal.value(long unscaledVal, int scale)
»Unlösbare Probleme sind in der Regel schwierig...«
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: [Java]BigDecimal - wie geht das?

  Alt 17. Sep 2004, 15:41
Also bei mir funktioniert das:

Code:
BigDecimal dec;
dec = new BigDecimal(506889283.657);
dec.multiply(new BigDecimal(445555.89898));
System.out.println(dec.toString());
import java.math.* natürlich nicht vergessen!
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Benutzerbild von glkgereon
glkgereon

Registriert seit: 16. Mär 2004
2.287 Beiträge
 
#5

Re: [Java]BigDecimal - wie geht das?

  Alt 17. Sep 2004, 16:29
achso...

aber wenn ich das in ner schleife mache, und dann jedes mal dec = new BigDecimal mache, geht das oder ist das nicht langsam?
»Unlösbare Probleme sind in der Regel schwierig...«
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: [Java]BigDecimal - wie geht das?

  Alt 17. Sep 2004, 16:51
Gehen tuts bestimmt, aber langsam ist das bestimmt schon. ich hab jetzt auf die Schnelle nix gefunden, um den Wert der Zahl zu setzen, nachdem das Objekt erzeugt wurde. Kuck dir nochmal die Members der Klasse genau an, vielleicht findest du was genaueres.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz