Βίντεο: f2c 2024
Οι αριθμοί κυμαινόμενου σημείου είναι αριθμοί που έχουν κλασματικά μέρη (συνήθως εκφράζονται με δεκαδικό σημείο). Θα πρέπει να χρησιμοποιείτε έναν τύπο κινητής υποδιαστολής σε προγράμματα Java κάθε φορά που χρειάζεστε έναν αριθμό με δεκαδικό, όπως το 19. 95 ή το 3. 1415.
Η Java έχει δύο πρωτόγονους τύπους για τους αριθμούς με κινητό σημείο:
-
float: 4 byte
-
διπλό: Χρησιμοποιεί 8 byte
Σε όλες σχεδόν τις περιπτώσεις, θα πρέπει να χρησιμοποιήσετε τον διπλό τύπο όποτε χρειάζεστε αριθμούς με κλασματικές τιμές.
Η ακρίβεια μιας τιμής κυμαινόμενου σημείου υποδεικνύει πόσα σημαντικά ψηφία μπορεί να έχει η τιμή μετά το δεκαδικό της σημείο. Η ακρίβεια ενός τύπου float είναι μόνο περίπου έξι ή επτά δεκαδικά ψηφία, κάτι που δεν επαρκεί για τους περισσότερους τύπους υπολογισμού.
Εάν χρησιμοποιείτε Java για να γράψετε ένα σύστημα μισθοδοσίας, για παράδειγμα, μπορεί να ξεφύγετε με τη χρήση μεταβλητών float για την αποθήκευση μισθών για υπαλλήλους όπως δάσκαλοι ή πυροσβέστες, αλλά όχι για επαγγελματίες παίκτες μπέιζμπολ ή εταιρικά στελέχη.
Αντίθετα, οι διπλές μεταβλητές έχουν ακρίβεια περίπου 15 ψηφίων, η οποία είναι αρκετή για τους περισσότερους σκοπούς.
Όταν χρησιμοποιείτε λέξεις κυμαινόμενου σημείου, θα πρέπει πάντα να συμπεριλαμβάνετε ένα δεκαδικό σημείο, όπως παρακάτω:
διπλή περίοδος = 99. 0;
Αν παραλείψετε την υποδιαστολή, ο μεταγλωττιστής Java αντιμετωπίζει το γράμμα ως ακέραιο. Στη συνέχεια, όταν βλέπει ότι προσπαθείτε να ορίσετε το ακέραιο literal σε μια διπλή μεταβλητή, ο μεταγλωττιστής μετατρέπει τον ακέραιο σε μια διπλή τιμή. Αυτό το βήμα μετατροπής που μπορεί να αποφευχθεί χρησιμοποιεί κάποιο πολύτιμο χρόνο επεξεργασίας.
Για να εξοικονομήσετε χρόνο, μπορείτε να προσθέσετε ένα επίθεμα F ή D σε κυμαινόμενο σημείο κυλιόμενου σημείου για να δείξετε αν το ίδιο το literal είναι τύπου float ή double. Για παράδειγμα:
τιμή float1 = 199. 33F; διπλή τιμή2 = 200495. 995D;
Αν παραλείψετε την κατάληξη, υποθέτουμε D. Ως αποτέλεσμα, μπορείτε συνήθως να παραλείψετε το επίθημα D για διπλά κείμενα.