HomeArtikelDownloadsForum
PCFreunde.deForumEntwicklungJava
Besucher online: 942
Schnellsuche

Anzeigen

Community

Foren
Java Seite 1/1
Double zu int
AntwortenNeues ThemaZur akzeptierten AntwortZur Themenliste
Seiten:
1
Nachricht
MadBonsaiJr
Titel: Double zu int 22.10.2011 12:49
1.522 Punkte (?)
Anmeldungsdatum: 26.08.2009
Beiträge: 791
Tutorial Autor (?)
Heyho,

Ich möchte in Java aus einer double eine int variable machen. Quasi runden. Wie?

________________________________________
Pc: http://www.sysprofile.de/id146539
Phobie vor langen Wörtern: Hippopotomonstrosesquippedaliophobie
Private Nachricht senden  
 
L3oop
Titel: Double zu int 22.10.2011 12:54
Moderator
45.021 Punkte (?)
Anmeldungsdatum: 25.04.2008
Beiträge: 9.399
Experte
Geht am einfachsten mit Typecasting, also zum Beispiel:

double var1 = 5.23;
int var2 = (int)var1;

Die Nachkommastellen werden normalerweise einfach weggeschnitten, d.h. aus 5.23 oder 5.97 würde beispielsweise 5 werden.

________________________________________
StereomixBootreihenfolge ändernPC beschleunigen
Private Nachricht senden  
 
MadBonsaiJr
Titel: Double zu int 22.10.2011 13:01
1.522 Punkte (?)
Anmeldungsdatum: 26.08.2009
Beiträge: 791
Tutorial Autor (?)
Und gibt es eine vergleichliche Methode mit Runden?

________________________________________
Pc: http://www.sysprofile.de/id146539
Phobie vor langen Wörtern: Hippopotomonstrosesquippedaliophobie
Private Nachricht senden  
 
Nico1994
Titel: Double zu int 22.10.2011 13:09
2.414 Punkte (?)
Anmeldungsdatum: 29.09.2007
Beiträge: 817
Akzeptierte Antwort
(+50 Punkte)
Jo ;)

if(var1 - (int) var 1 >= 0.50)
{
int var2 = (int)var1 + 1;
return var2;
}
else
{
int var2 = (int)var1;
return var2;
}

Bitteschön ;D



[Zuletzt bearbeitet: 22.10.2011 13:45]

________________________________________
Mein System: http://www.sysProfile.de/id152502
Private Nachricht senden  
 
MadBonsaiJr
Titel: Double zu int 22.10.2011 13:21
1.522 Punkte (?)
Anmeldungsdatum: 26.08.2009
Beiträge: 791
Tutorial Autor (?)
Zitat:
if(var1 - (int) var 1 >= 0.50)
{

Das verstehe ich :mrgreen:
Zitat:
}
else
{
int var2 = (int)var1;
return var2;
}

Das auch :mrgreen:
Aber mal angenommen var1 ist 5.6. Dann stellt er fest, "oh, 0.6 ist größer als 0.5" dann:
Zitat:
var2= var1 + 1

Was aber wäre
Zitat:
var2= 5.6 + 1=6.6


Hab aber grade was im Internet gefunden, ich verbind das einfach mit deiner Methode: http://paste.ideaslabs.com/show/Laxw1ZSDpm

Edit: oder du hast einfach nur (int) vergessen ^^


[Zuletzt bearbeitet: 22.10.2011 13:21]

________________________________________
Pc: http://www.sysprofile.de/id146539
Phobie vor langen Wörtern: Hippopotomonstrosesquippedaliophobie
Private Nachricht senden  
 
Nico1994
Titel: Double zu int 22.10.2011 13:25
2.414 Punkte (?)
Anmeldungsdatum: 29.09.2007
Beiträge: 817
Oh ja sry ^^
Fast ^^

int var2 = (int)var1 + 1;


So gings ^^

________________________________________
Mein System: http://www.sysProfile.de/id152502
Private Nachricht senden  
 
L3oop
Titel: Double zu int 22.10.2011 13:29
Moderator
45.021 Punkte (?)
Anmeldungsdatum: 25.04.2008
Beiträge: 9.399
Experte
Eigentlich müsste man sich diese Mühe nicht machen, Java bietet nämlich auch die round-Funktion aus der Math-Klasse dafür an:

http://userpage.fu-berlin.de/~ram/pub/pu...tierung_de

Will man auf eine x Nachkommazahlen runden, einfach vor dem Runden die Zahl mit 10^x multiplizieren und nach dem Runden wieder durch 10^x dividieren.

________________________________________
StereomixBootreihenfolge ändernPC beschleunigen
Private Nachricht senden  
 
MadBonsaiJr
Titel: Double zu int 22.10.2011 13:31
1.522 Punkte (?)
Anmeldungsdatum: 26.08.2009
Beiträge: 791
Tutorial Autor (?)
Danke für die Hilfe, doch trozdem brauch ich das (im Moment) garnich, denn wie's oft passieren kann hatte ich nur ein +1 zu viel.
L3oop, irgendwie klappt dein Link bei mir nicht :shock:

________________________________________
Pc: http://www.sysprofile.de/id146539
Phobie vor langen Wörtern: Hippopotomonstrosesquippedaliophobie
Private Nachricht senden  
 
L3oop
Titel: Double zu int 22.10.2011 13:40
Moderator
45.021 Punkte (?)
Anmeldungsdatum: 25.04.2008
Beiträge: 9.399
Experte
Komisch, vorhin ging er noch, macht aber nichts, im Prinzip gibst du der Methode Math.Round einfach die zu rundende Zahl mit.

________________________________________
StereomixBootreihenfolge ändernPC beschleunigen
Private Nachricht senden  
 
AntwortenNeues ThemaZur akzeptierten AntwortZur Themenliste
Seiten:
1
Community Login
eMail:
Passwort:
Auto-Login