Υλικό υπολογιστών

Γνώση Υπολογιστών >> Υλικό υπολογιστών >  >> Σαρωτές

Ποιες είναι οι αποδεκτές παράμετροι για έναν σαρωτή;

Η κλάση «Scanner» στην Java δέχεται αρκετές παραμέτρους στους κατασκευαστές της, επηρεάζοντας τον τρόπο με τον οποίο διαβάζει την είσοδο. Οι πιο συνηθισμένοι κατασκευαστές είναι:

* scanner (πηγή εισόδουstream) `: Αυτός είναι ο πιο γενικός κατασκευαστής. Παίρνει ένα `InputStream` ως επιχείρημα, το οποίο αντιπροσωπεύει ένα ρεύμα bytes. Αυτό σας επιτρέπει να διαβάσετε από διάφορες πηγές:

* `System.in`:Διαβάζει από την τυπική είσοδο (συνήθως το πληκτρολόγιο). Αυτή είναι η πιο συνηθισμένη χρήση.

* `New FileInputStream (" myfile.txt ")`:Διαβάζει από ένα αρχείο. Θα χρειαστείτε τον κατάλληλο χειρισμό σφαλμάτων (π.χ., `try-catch` μπλοκ) για να διαχειριστείτε το πιθανό` filenotfoundException '.

* `Νέο bytearrayInputStream (bytearray)`:διαβάζει από μια συστοιχία byte. Χρήσιμο για δοκιμή ή επεξεργασία δεδομένων στη μνήμη.

* scanner (αναγνώσιμη πηγή) `: Αυτός ο κατασκευαστής είναι παρόμοιος με τον κατασκευαστή `InputStream` αλλά χρησιμοποιεί τη διεπαφή 'advenable'. Το `readable` είναι μια γενικότερη διεπαφή από το` InputStream ', που περιλαμβάνει ένα ευρύτερο φάσμα πηγών εισόδου. Οι τάξεις `Reader` (όπως το` filereader ', `stringreader', κλπ.) Εφαρμόζουν` readable '.

* scanner (πηγή αρχείου) `: Ένας κατασκευαστής ευκολίας που παίρνει άμεσα ένα αντικείμενο «αρχείου» ως είσοδο. Εσωτερικά, αυτό δημιουργεί ένα `FileInputStream '. Απαιτεί χειρισμό σφαλμάτων για `filenotfoundexception '.

* scanner (πηγή συμβολοσειράς) `: Αυτό δημιουργεί έναν σαρωτή που διαβάζει από μια δεδομένη συμβολοσειρά. Χρήσιμο για δοκιμή ή επεξεργασία δεδομένων συμβολοσειρών χωρίς εξωτερικά αρχεία.

Δεν μεταβιβάζονται απευθείας άλλες παράμετροι στον κατασκευαστή σαρωτή. Ωστόσο, μπορείτε να επηρεάσετε * πώς * ο σαρωτής λειτουργεί μέσω των μεθόδων του:

* `usedelimiter (...)`: Αλλάζει τον οριοθέτη που χρησιμοποιείται για να διαχωρίσει τα μάρκες (λέξεις ή αριθμοί). Από προεπιλογή, χρησιμοποιεί Whitespace. Μπορείτε να καθορίσετε μια κανονική έκφραση ως οριοθέτη.

* `uselocale (...)`: Ορίζει την τοπική ρύθμιση, η οποία επηρεάζει τη μορφοποίηση αριθμών και την κατηγοριοποίηση χαρακτήρων.

* `nextline ()`, `nextInt ()`, `nextDouble ()` κλπ.: Αυτές οι μέθοδοι δεν είναι παράμετροι κατασκευαστή, αλλά ελέγχουν * πώς * ο σαρωτής διαβάζει δεδομένα από την πηγή εισόδου.

Συνοπτικά, ενώ ο κατασκευαστής παίρνει μόνο ένα επιχείρημα (ένα `inputStream ',' readable ',` file' ή `string '), η συμπεριφορά του σαρωτή προσαρμόζεται περαιτέρω με τις μεθόδους του μετά τη δημιουργία. Θυμηθείτε τον σωστό χειρισμό εξαιρέσεων, ειδικά όταν ασχολείστε με την είσοδο αρχείου.

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα