Πίνακας περιεχομένων:
Βίντεο: Python greek, μαθήματα στα ελληνικά 6 (Γραμμή εντολών) 2024
Μια φορά κι έναν καιρό, οι περισσότεροι προγραμματιστές Java χρησιμοποίησαν μια διεπαφή ανάπτυξης με βάση το κείμενο. Πληκτρολόγησαν μια εντολή σε ένα απλό παράθυρο, συνήθως με λευκό κείμενο σε μαύρο φόντο.
Πόσο θαμπό!Το απλό παράθυρο περνάει από τα διάφορα ονόματα, ανάλογα με το είδος του λειτουργικού συστήματος που χρησιμοποιείτε. Στα Windows, ένα παράθυρο κειμένου αυτού του είδους είναι ένα παράθυρο γραμμής εντολών. Σε ένα Macintosh και σε Linux, αυτό το παράθυρο είναι το τερματικό. Ορισμένες εκδόσεις του Linux και του UNIX ονομάζουν αυτό το παράθυρο ένα κέλυφος.
->Τέλος πάντων, από την αρχαιότητα, θα μπορούσατε να γράψετε ένα πρόγραμμα που έβγαλε επιπλέον πληροφορίες όταν πληκτρολογήσατε την εντολή για να ξεκινήσετε το πρόγραμμα.
Όταν ξεκινάτε το MakeRandomNumsFile, πληκτρολογείτε μερικές επιπλέον πληροφορίες.Στην παραπάνω εικόνα ο προγραμματιστής πληκτρολογεί java MakeRandomNumsFile για να εκτελέσει το πρόγραμμα
MakeRandomNumsFile
. Αλλά ο προγραμματιστής ακολουθεί το java MakeRandomNumsFile με δύο επιπλέον πληροφορίες: MyNumberedFile. txt και 5 . Όταν εκτελείται το πρόγραμμα
MakeRandomNumsFile
, το πρόγραμμα απορροφά δύο πρόσθετα στοιχεία και τα χρησιμοποιεί για να κάνει ό, τι πρέπει να κάνει το πρόγραμμα. Το πρόγραμμα απορροφά το
MyNumberedFile. txt 5
, αλλά σε άλλη περίπτωση ο προγραμματιστής μπορεί να πληκτρολογήσει SomeStuff 28 ή BunchONumbers 2000 . Οι επιπλέον πληροφορίες μπορεί να διαφέρουν κάθε φορά που εκτελείτε το πρόγραμμα.
Η επόμενη ερώτηση είναι: "Πώς ένα πρόγραμμα Java γνωρίζει ότι υποτίθεται ότι πρέπει να ξεφορτωθεί επιπλέον πληροφορίες κάθε φορά που τρέχει; "Από τότε που αρχίσατε να εργάζεστε αρχικά με την Java, βλέπετε αυτήν την
String args []
επιχείρηση στην κεφαλίδα κάθε μεθόδου
main
. Λοιπόν, είναι καιρός να μάθεις τι είναι αυτό. Η παράμετρος
args []
είναι ένας πίνακας τιμών
String
. Αυτές οι τιμές
String
ονομάζονται επιχειρήματα γραμμής εντολών.
Μερικοί προγραμματιστές γράφουν
δημόσια static void main (String [
args)
Ούτως ή άλλως, args είναι ένας πίνακας τιμών
String
.
Χρήση παραμέτρων γραμμής εντολών σε ένα πρόγραμμα Java
Αυτό το κομμάτι του κώδικα σας δείχνει πώς να χρησιμοποιήσετε τα επιχειρήματα της γραμμής εντολών.
Με αυτόν τον τρόπο δημιουργείτε ένα αρχείο αριθμών
import java. χρήσιμο. Τυχαίος;
εισαγωγή java. io. PrintStream;
εισαγωγή java. io. IOException;
Δημόσια τάξη MakeRandomNumsFile {
δημόσιο static κενό κύρια (
String args []
) ρίχνει IOException {
Random generator = new Random (); αν (args.μήκος <2) { Σύστημα. έξω. println ("Χρήση: αριθμός αρχείου MakeRandomNumsFile");
Σύστημα. έξοδος (1);
}
PrintStream printOut = νέο PrintStream (args [0]);
int numLines = Ακέραιος αριθμός. parseInt (args [1]) ·
για το (int count = 1, count <= numLines; count ++) {
printOut. println (γεννήτρια, nextInt (10) + 1).
}
printOut. Κοντά();
}
}
Εάν ένα συγκεκριμένο πρόγραμμα αναμένει κάποια επιχειρήματα γραμμής εντολών, δεν μπορείτε να ξεκινήσετε το πρόγραμμα που εκτελείται με τον ίδιο τρόπο που θα εκκινήσετε τα περισσότερα από τα άλλα κανονικά προγράμματα. Ο τρόπος με τον οποίο τροφοδοτείτε τα επιχειρήματα της γραμμής εντολών σε ένα πρόγραμμα εξαρτάται από τον IDE που χρησιμοποιείτε - Eclipse, NetBeans ή οτιδήποτε άλλο. Allmycode. com έχει οδηγίες για την τροφοδοσία επιχειρημάτων σε προγράμματα που χρησιμοποιούν διάφορα IDE.
Όταν ο κώδικας αρχίσει να τρέχει, ο πίνακας
args
παίρνει τις τιμές του. Με την εκτέλεση που εμφανίζεται στην παραπάνω εικόνα, το στοιχείο συστοιχίας
args [0]
λαμβάνει αυτόματα την τιμή
"MyNumberedFile. Txt"
και
γίνεται αυτόματα
"5"
. Έτσι, οι δηλώσεις εκχώρησης του προγράμματος καταλήγουν να έχουν την ακόλουθη σημασία:
PrintStream printOut = new PrintStream ("MyNumberedFile. Txt");
int numLines = Ακέραιος αριθμός. parseInt ("5");
Το πρόγραμμα δημιουργεί ένα αρχείο με όνομα
MyNumberedFile. txt
και ορίζει
numLines
σε
5
. Έτσι αργότερα στον κώδικα, το πρόγραμμα παράγει τυχαία πέντε τιμές και βάζει αυτές τις τιμές σε
MyNumberedFile. txt
. Μια διαδρομή του προγράμματος σας δίνει αυτό.
Μετά την εκτέλεση του κώδικα, από πού μπορείτε να βρείτε το νέο αρχείο (
MyNumberedFile. Txt
) στο σκληρό σας δίσκο; Η απάντηση εξαρτάται από πολλά διαφορετικά πράγματα. Εάν χρησιμοποιείτε ένα IDE με προγράμματα που χωρίζονται σε έργα, τότε το νέο αρχείο βρίσκεται κάπου στο φάκελο του έργου. Μπορείτε να αλλάξετε τη λίστα 11-7 για να ορίσετε ένα πλήρες όνομα διαδρομής - ένα όνομα όπως
"c: \ Users \ MyName Documents \ MyNumberedFile. Txt"
ή
"/ Χρήστες / MyName / Documents / MyNumberedFile. Txt"
.
Στα Windows, τα ονόματα διαδρομής αρχείου περιέχουν χαρακτήρες αντίστροφης κάθετος. Και στην Java, όταν θέλετε να υποδείξετε μια αντίστροφη κάθετο μέσα σε ένα διπλό-quoted String literal, χρησιμοποιείτε αντί αυτού διπλή πλάγια κάθετο. Γι 'αυτό το λόγο "c: \ Users \ MyName Documents \ MyNumberedFile. txt "περιέχει ζεύγη backslash. Αντίθετα, οι διαδρομές αρχείων στα λειτουργικά συστήματα Linux και Macintosh περιέχουν εμπρόσθια πτερύγια. Για να υποδείξετε μια προς τα εμπρός κάθετο σε ένα Java String, χρησιμοποιήστε μόνο μία πλάγια κάθετο.
Παρατηρήστε πως κάθε παράγων γραμμής εντολών είναι τιμή
String
. Όταν κοιτάζετε το
args [1], δεν βλέπετε τον αριθμό 5 - βλέπετε τη συμβολοσειρά
"5"
με ένα ψηφίο χαρακτήρα σε αυτό. Δυστυχώς, δεν μπορείτε να χρησιμοποιήσετε το
"5"
για να κάνετε οποιαδήποτε μέτρηση. Για να πάρετε μια τιμή
int
από
"5"
, πρέπει να εφαρμόσετε τη μέθοδο
parseInt
.
Η μέθοδος
parseInt
ζει μέσα σε μια κλάση που ονομάζεται
Ακέραιος αριθμός.
Για να καλέσετε
parseInt
, προφέρετε το όνομα parseInt με τη λέξη
ακέραιος.
Η κλάση Integer έχει όλα τα είδη εύχρηστων μεθόδων για να κάνει πράγματα με τιμές int.
Στην Java, το ακέραιο είναι το όνομα μιας κλάσης και το int είναι το όνομα ενός πρωταρχικού (απλού) τύπου. Τα δύο πράγματα σχετίζονται, αλλά δεν είναι τα ίδια. Η κλάση
Integer
έχει μεθόδους και άλλα εργαλεία για την αντιμετώπιση των τιμών
int
.
Έλεγχος για τον σωστό αριθμό επιχειρημάτων γραμμής εντολών
Τι συμβαίνει αν ο χρήστης κάνει λάθος; Τι γίνεται αν ο χρήστης ξεχάσει να πληκτρολογήσει τον αριθμό
5
στην πρώτη γραμμή
w
όταν εκκινήσετε MakeRandomNumsFile ; Ο υπολογιστής εκχωρεί "MyNumberedFile. Txt"
σε
args [0]
. Αυτό είναι κακό. Εάν ο υπολογιστής φτάσει ποτέ στην εντολή
int numLines = Ακέραιος αριθμός. parseInt (args [1]) ·
το πρόγραμμα συντρίβεται με ένα εχθρικό
ArrayIndexOutOfBoundsException
.
Τι κάνεις για αυτό; Ελέγχετε το μήκος του πίνακα
args
. Συγκρίνετε τα
args. μήκος
με
2
. Εάν το
args array
έχει λιγότερα από δύο στοιχεία, εμφανίζετε ένα μήνυμα στην οθόνη και βγείτε από το πρόγραμμα.
Ο κώδικας σας λέει πώς να το εκτελέσετε.
Παρά τον έλεγχο των
. μήκος
, ο κωδικός εξακολουθεί να μην είναι ανθεκτικός σε σύγκρουση. Εάν ο χρήστης πληκτρολογεί πέντε αντί για 5, το πρόγραμμα παίρνει ένα noseedive με
NumberFormatException
. Το δεύτερο επιχείρημα γραμμής εντολών δεν μπορεί να είναι μια λέξη. Το επιχείρημα πρέπει να είναι ένας αριθμός (και ένας ολόκληρος αριθμός, σε αυτό). Μπορείτε να προσθέσετε δηλώσεις για να κάνετε τον κώδικα πιο αλεξίσφαιρο.
String
με ένα κενό χώρο μέσα σε αυτήν. Απλά περικλείστε την τιμή σε διπλά εισαγωγικά. Για παράδειγμα, μπορείτε να εκτελέσετε τον παραπάνω κώδικα με τα επιχειρήματα
"Το αρχείο μεγάλου λίπους μου. Txt" 7
.