java:formatting

This is an old revision of the document!


A PCRE internal error occured. This might be caused by a faulty plugin

====== Μορφοποίηση Εξόδου ====== **Σημείωση:** Τα μόνα //PrintStream// αντικείμενα που είναι πιθανό να χρειαστείτε είναι τα //System.out// και //System.err//. Όταν χρειάζεται να δημιουργήσετε ένα διαμορφωμένο stream εξόδου, χρησιμοποιήστε //PrintWriter//, και όχι //PrintStream//. Όπως όλα τα αντικείμενα streams byte και χαρακτήρων, περιπτώσεις //PrintStream// και //PrintWriter// εφαρμόζουν ένα τυποποιημένο σύνολο μεθόδων εγγραφής για απλή έξοδο byte και χαρακτήρα. Επιπλέον, τόσο η //PrintStream// όσο και η //PrintWriter// εφαρμόζουν το ίδιο σύνολο μεθόδων για τη μετατροπή των εσωτερικών δεδομένων σε μορφοποιημένη έξοδο. Δύο δυνατότητες μορφοποίησης παρέχονται: * To //print// και //println// μορφοποιεί μεμονωμένες τιμές σε έναν τυποποιημένο τρόπο. * Το //format// μορφοποιεί σχεδόν οποιοδήποτε πλήθος τιμών βασισμένο σε ένα string μορφοποίησης ανάλογο με αυτό της printf στην γλώσσα C. ==== Οι print και println Μέθοδοι ==== Η κλήση των //print// ή //println// λαμβάνει ως όρισμα ένα String. Εάν υπάρχουν ορίσματα στις δύο αυτές μεθόδους που δεν είναι του τύπου String, τότε καλείται η μέθοδος ''toString()'', προκειμένου να μετατραπούν τα ορίσματα σε String. Μπορείτε να δείτε το παρακάτω παράδειγμα: <code java Root.java> public class Root { public static void main(String[] args) { int i = 2; double r = Math.sqrt(i); System.out.print("The square root of "); System.out.print(i); System.out.print(" is "); System.out.print(r); System.out.println("."); i = 5; r = Math.sqrt(i); System.out.println("The square root of " + i + " is " + r + "."); } } </code> Αυτή είναι η έξοδος της Root: <code java> The square root of 2 is 1.4142135623730951. The square root of 5 is 2.23606797749979. </code> ==== Η Μέθοδος format ==== Η μέθοδος //format// μορφοποιεί πολλαπλά στοιχεία που βασίζονται σε ενα //string// μορφής. Το string μορφής αποτελείται από //static// κείμενο με ενσωματωμένα προσδιοριστικά μορφής. Εκτός των προσδιοριστικών μορφής, το string μορφής είναι αμετάβλητο της εξόδου. Τα //strings// μορφής υποστηρίζουν πολλές δυνατότητες. Εδώ, θα καλύψουμε μόνο κάποια βασικά. Το παράδειγμα //Root2// μορφοποιεί δύο τιμές με μία μόνο κλήση της //format//: <code java Root2.java> public class Root2 { public static void main(String[] args) { int i = 2; double r = Math.sqrt(i); System.out.format("The square root of %d is %f.%n", i, r); } } </code> Αυτή είναι η έξοδος: <code java> The square root of 2 is 1.414214. </code> Όπως και τα τρία που χρησιμοποιούνται σε αυτό το παράδειγμα, όλα τα προσδιοριστικά μορφής αρχίζουν με ένα % και τελειώνουν με μια μετατροπή 1- ή 2- χαρακτήρων που καθορίζει το είδος της μορφοποιημένης εξόδου που παράγεται. Οι τρεις μετατροπές που χρησιμοποιήθηκαν εδώ είναι: * το d μορφοποιεί μια τιμή integer ως μια δεκαδική τιμή. * το f μορφοποιεί μια floating point τιμή ως μια δεκαδική τιμή. * το n εξάγει έναν platform-specific τερματιστή γραμμής . Εδώ είναι κάποιες άλλες μετατροπές: * το x μορφοποιεί έναν integer ως μια δεκαεξαδική τιμή. * το s μορφοποιεί κάθε τιμή σε ένα string. * το tB μορφοποιεί έναν integer σε ένα locale-specific όνομα μήνα. |Προηγούμενο: [[:java:character_streams | Streams Χαρακτήρων]]| Επόμενο: [[:java:class_path | Η κλάση Path ]] |

java/formatting.1425992048.txt.gz · Last modified: 2016/02/26 11:15 (external edit)