Ein Projekt, das ich brauche die Bewegung eines Spielers an einer Koordinate mit getX und getY, aber ich bin verwirrt, wie getX und getY von einem Doppel zu einem Int zu konvertieren, so dass ich sie spielen kann das Zeichenfeld.Konvertierung von Doppel zu int
Antwort
Nur Casting zu int wird das Double abschneiden. Sie müssen also angeben, welches Ergebnis Sie wirklich wollen, bevor Sie entscheiden, wie Sie den int erhalten. Zum Beispiel, wenn der doppelte Wert 2.999 ist, möchten Sie, dass Ihr int 2 oder 3 ist?
Wenn Sie den nächsten int (3 oben) möchten, verwenden Sie Math.round (d), das einen langen Wert zurückgibt.
Sie möchten Ihr Double als int darstellen, aber Sie müssen darauf achten, wie Sie casten, denn wenn Sie möchten, dass Ihre Bewegung genau ist, wollen Sie Werte von x.5 und darüber aufrunden und Werte unter x. 5 abgerundet werden.
Casting wird immer abgerundet, also ist ein guter Weg, um richtig zu runden, das Hinzufügen von 0,5 zu allen Ihren Doubles, bevor Sie zu einem int werfen.
Hier sind ein paar Beispiele
double = 1.1
int (double) = 1
double = 1.7
int (double) = 1 \\ Note that we will likely want this to be 2
unserer Methode verwenden, können sehen, wie diese 2 Doppelzimmer würde
double = 1.1
double + .5 = 1.6
int (double) = 1
double 1.7 = 1.7
double + .5 = 2.2
int (double) = 2
Beachten Sie, dass jetzt unsere verdoppelt, die über x.5 abgerundet werden bis gegossen werden richtig.
- 1. # [Fehler] ungültige Konvertierung von 'int *' zu 'int'
- 2. Haskell teilen Doppel von Int
- 3. Android signed int zu unsigned Int-Konvertierung
- 4. Konvertierung von Dezimal zu Int in C#
- 5. Konvertierung von Bytes zu int in Java
- 6. ungültige Konvertierung von 'int *' zu 'uint8_t
- 7. Swift 3 Konvertierung von Int zu String
- 8. Mögliche verlustreiche Konvertierung von Double zu Int?
- 9. Swift: CInt zu Int-Konvertierung?
- 10. Ungültige Konvertierung von "int" zu "nodeType <int>"
- 11. Fehler: ungültige Konvertierung von int zu int (*) [4] in Funktionsaufrufe
- 12. Fehler ungültige Konvertierung von 'int *' zu 'int' -fpermissive
- 13. '=': Konvertierung von 'int (*) [5]' auf 'int *'
- 14. auf Int Doppel abgerundet
- 15. implizite Konvertierung von Int Shared_ptr
- 16. String zu Doppel-Konvertierung ohne Stream oder boost lexikalischen Besetzung
- 17. Fibonacci C++ - ungültige Konvertierung von 'int' zu 'int *' und Initialisierung des Arguments 2/3 von 'int fibo (int, int *, int *)'
- 18. float/int implizite Konvertierung
- 19. Unsigned Int-Konvertierung C++
- 20. Java - führende Nullen in einer langen durch Konvertierung zu Doppel
- 21. Liste der Zeichenfolge zu Int-Konvertierung
- 22. Java int + = Doppel Syntax Überraschung
- 23. Convert Int in Doppel Python
- 24. Stop Pandas von der Konvertierung von Int zu Float
- 25. C++ int String-Konvertierung
- 26. String zu Int-Konvertierung mit ToInt-Funktion
- 27. String zu int Array-Konvertierung C#
- 28. Konvertierung Math hinter Byte zu Int
- 29. Konvertierung in eine Doppel-Escape-Zeichenfolge
- 30. Java implizite Konvertierung von int in Byte
'(int) foo.getX();' Oder Sie können eine der verschiedenen Rundungsmethoden leicht finden. –
Schauen Sie sich die "double to int" -Frage an, _not_ die "Double to Integer" -Frage. Ersterer beantwortet Ihre Frage. Letzterer beantwortet eine Frage zu _boxed primitiven_. –