Δείτε πώς λειτουργεί:
`` `java
δημόσια τάξη floattodouble {
δημόσιο στατικό κενό κύριο (String [] args) {
float myFloat =3.14f; // Σημειώστε ότι το επίθημα «F» είναι ζωτικής σημασίας για τα πλωτά κυριολεκτικά.
Διπλό myDouble =myFloat; // σιωπηρή μετατροπή
System.out.println ("float:" + myfloat);
System.out.println ("Double:" + MyDouble);
}
}
`` `
Η γραμμή `Double MyDouble =myFloat ·` Εμμισθάται σιωπηρά η τιμή 'float' σε ένα `Double '. Δεν απαιτείται χύτευση. Η Java χειρίζεται απρόσκοπτα τη μετατροπή.
Αν επρόκειτο να εκτελέσετε αριθμητικές λειτουργίες που αφορούσαν το «float» και το «διπλό», το «float» θα προωθηθεί αυτόματα σε «διπλό» πριν από τον υπολογισμό.
Ενώ μπορείτε να το ρίξετε ρητά χρησιμοποιώντας το «(διπλό) myfloat», είναι περιττό επειδή η σιωπηρή μετατροπή έχει ήδη αντιμετωπιστεί σωστά και αποτελεσματικά από τον μεταγλωττιστή Java:
`` `java
Διπλό MyDoubleExPlicit =(διπλό) myFloat; // σαφές, αλλά περιττό
`` `
Σε όλες σχεδόν τις περιπτώσεις, η σιωπηρή μετατροπή προτιμάται για καλύτερη αναγνωσιμότητα και συνοπτική. Το ρητό cast μπορεί να είναι χρήσιμο μόνο σε καταστάσεις όπου θέλετε να κάνετε τη μετατροπή πολύ σαφή για την αναγνωσιμότητα σε πολύπλοκο κώδικα ή να τονίσετε ότι γνωρίζετε πιθανή απώλεια ακριβείας (αν και στην περίπτωση αυτή από το πλωτήρα για να διπλασιάσει το ελάχιστο σε σύγκριση με άλλες μετατροπές).
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα