Μάθετε Προγραμματισμό Java: Πώς να χρησιμοποιήσετε λίστες, θέματα & Co
Στο τελευταίο άρθρο της σειράς Java μας, εξηγούμε πώς να χειρίζεστε σωστά τα νήματα, τις λίστες, τις εξαιρέσεις και τα αρχεία της Java.
Java: ποιες είναι οι εξαιρέσεις;
Εάν δεν έχετε ακόμη εργαστεί με την Java, μπορείτε πρώτα να διαβάσετε τα "Βασικά στοιχεία" εδώ. Διάφοροι κωδικοί δειγμάτων υπάρχουν στην γκαλερί εικόνων στο τέλος του άρθρου.
- Μια εξαίρεση είναι ένα πρόβλημα που παρουσιάζεται κατά την εκτέλεση του προγράμματος.
- Υπάρχει ένας ειδικός κώδικας για την αντιμετώπιση μιας τέτοιας εντολής. Για να το κάνετε αυτό, γράψτε πρώτα "δοκιμάστε {" και μετά τον κώδικα που θα εκτελεστεί. Στη συνέχεια, γράψτε "} catch (Exception e) {" και στη συνέχεια να εκτελέσετε διάφορες εντολές εάν δεν είναι δυνατή η προηγούμενη λειτουργία. Μην ξεχάσετε να προσθέσετε ένα στήριγμα στο τέλος.
- Μια εντολή ρίψεως είναι επίσης πολύ πρακτική. Ένα παράδειγμα αυτού είναι ο κώδικας »int div (int a, int b) ρίχνει« ⮩ »ArithmeticException {« ⮩ »εάν (b == 0) {« ⮩ »ρίξει νέα Αριθμητική Εκτέλεση (" Division by 0! ") ⮩ »} Αλλιώς {« ⮩ »επιστρέφει a / b;« ⮩ »}« ⮩ »}«. Η εντολή throws στη μέθοδο καθορίζει τον τύπο εξαίρεσης που μπορεί να πάρει η μέθοδος. Η λέξη-κλειδί throw καθορίζει τι πρέπει να συμβεί με αυτήν την εξαίρεση.
- Πρακτικό: Ένα μπλοκ δοκιμής μπορεί να περιέχει πολλά μπλοκ συλλογής.
Χρησιμοποιήστε τα θέματα σε Java
Τα θέματα σας επιτρέπουν να εκτελείτε ταυτόχρονα διαφορετικές εντολές στην Java. Υπάρχουν δύο διαφορετικοί τρόποι δημιουργίας ενός νήματος.
- Από τη μία πλευρά, μια ορισμένη κλάση μπορεί να κληρονομήσει από την κλάση "Thread". Για παράδειγμα, η πρώτη εγγραφή "Class Loader επεκτείνει το νήμα {". Στη συνέχεια, πρέπει να ορίσετε μια μέθοδο με "public void run () {" που περιγράφει τις λειτουργίες του νήματος. Σε μια άλλη κλάση μπορείτε πλέον να χρησιμοποιήσετε την εντολή "Loader obj = new Loader ();" για να χρησιμοποιήσετε τη μέθοδο "obj.start ();" για να ξεκινήσετε το νήμα.
- Εναλλακτικά, μπορείτε να εφαρμόσετε τη διεπαφή "Runnable" σε μια κλάση. Μπορείτε να το κάνετε αυτό με την εντολή "class Loader implements Runnable {". Καθορίστε ξανά μια μέθοδο εκτέλεσης. Τώρα μπορείτε να ξεκινήσετε το νήμα σε μια άλλη κλάση με τον κώδικα "Thread t = new Thread (νέο Loader ());" ⮩ "t.start ();"
- Συμβουλή: Μπορείτε να χρησιμοποιήσετε την εντολή "Thread.sleep (1000);" για να αφήσετε το νήμα να ξεκουραστεί για ένα δευτερόλεπτο. Ωστόσο, σημειώστε ότι αυτή η εντολή δημιουργεί μια διακοπτόμενη εκτροπή.
Δημιουργήστε λίστες σε Java
Υπάρχουν δύο διαφορετικοί τύποι λιστών στη Java: το "ArrayList" και το "LinkedList".
- Συνήθως, πίνακες σε Java μπορούν να αποθηκεύσουν μόνο έναν ορισμένο αριθμό αντικειμένων. Ωστόσο, υπάρχει μια λειτουργία που ονομάζεται "ArrayList" στο Java API. Πρώτα γράψτε "import java.util.ArrayList;" για να εισαγάγετε το απαιτούμενο πακέτο. Τώρα μπορείτε να χρησιμοποιήσετε την εντολή ArrayList colors = new ArrayList (); για να δημιουργήσετε μια νέα λίστα. Προαιρετικά, μπορείτε να χρησιμοποιήσετε την εντολή ArrayList colors = new ArrayList (10), για να δημιουργήσετε μια λίστα που καθορίζει εκ των προτέρων τον τύπο και το μέγεθος δεδομένων.
- Τώρα μπορείτε να προσθέσετε κάτι στη λίστα με την εντολή »colors.add (" ... ");«. Με "colors.remove" ("..."), "αυτή η διαδικασία μπορεί να αντιστραφεί. Μπορείτε επίσης να χρησιμοποιήσετε τα "colors.contains (...)" για να ρωτήσετε αν η λίστα περιέχει ένα συγκεκριμένο στοιχείο ή χρησιμοποιήστε την εντολή »colors.get (int x);« για να πάρετε μια τιμή με ένα συγκεκριμένο δείκτη. Τέλος, μπορείτε να χρησιμοποιήσετε τις λέξεις »colors.size ();« για να αναζητήσετε τον αριθμό των στοιχείων της λίστας και να χρησιμοποιήσετε τα χρώματα. Καθαρή (); «για να διαγράψετε όλα τα στοιχεία της λίστας.
- Εναλλακτικά, υπάρχει επίσης το "LinkedList", το οποίο μπορείτε να εισαγάγετε με την εντολή »import java.util.LinkedList;«. Οι εντολές είναι οι ίδιες εδώ. Ωστόσο, πρέπει να γράψετε "LinkedList" κάθε φορά αντί για "ArrayList". Ένα ArrayList είναι πιο κατάλληλο για την αποθήκευση αντικειμένων που μπορούν να προσεγγιστούν αργότερα. Θα πρέπει να χρησιμοποιήσετε ένα LinkedList αν θέλετε να αλλάξετε δεδομένα.
Java: Χρησιμοποιήστε το HashMap
Στις παραπάνω λίστες, κάθε αντικείμενο έχει ένα ευρετήριο (ακέραιο). Το HashMap χρησιμοποιείται για την αποθήκευση δεδομένων με ένα ζεύγος τιμών που αποτελείται από "Key" και "Object".
- Εισάγετε το HashMap με την εντολή »import java.util.HashMap;«. Παρόμοια με τις λίστες, μπορείτε τώρα να δημιουργήσετε ένα HashMap με την εντολή »HashMap points = new HashMap ();«.
- Στη συνέχεια, για παράδειγμα, μπορείτε να προσθέσετε την εντολή »points.put (" Amy ", 154), ". Η εντολή »System.out.println (" points.get ("Amy")), "εξάγει τώρα την τιμή 154. Και πάλι, μπορείτε να χρησιμοποιήσετε μεθόδους αφαίρεσης για να την αφαιρέσετε.
- Ένα HashMap δεν μπορεί να περιέχει αντικείμενα με δύο πανομοιότυπα πλήκτρα. Ένα αντικείμενο απλά θα αντικατασταθεί. Οι μέθοδοι "containsKey" και "containsValue" είναι πολύ πρακτικές και μπορούν να χρησιμοποιηθούν για να ελέγξουν εάν υπάρχει ένα αντικείμενο ή ένα κλειδί στο HashMap.
- Υπάρχουν επίσης τα αποκαλούμενα "σύνολα κατακερματισμού". Ένα σύνολο είναι μια συλλογή τιμών, όπου δύο ταυτόσημες τιμές δεν μπορούν ποτέ να υπάρχουν. Η εντολή import java.util.HashSet; χρησιμοποιείται για την εισαγωγή. Για παράδειγμα, μπορείτε να δημιουργήσετε ένα νέο σετ με την εντολή »HashSet set = new HashSet ();«. Τώρα μπορείτε να προσθέσετε στοιχεία σε αυτό το HashSet με την εντολή »set.add (" ... ");«. Η εντολή »System.out.println (set), « εξάγει τελικά όλες τις εντολές του συνόλου.
- Συνήθως η σειρά των στοιχείων εντός ενός συνόλου κατακερματισμού δεν διατηρείται με συνέπεια. Ωστόσο, αν θέλετε, μπορείτε να χρησιμοποιήσετε ένα "LinkedHashSet".
- Με τον τρόπο: Ένας πίνακας hash αποθηκεύει πληροφορίες μέσω ενός μηχανισμού που ονομάζεται "hashing", στον οποίο κάθε τιμή ενός κλειδιού χρησιμοποιείται για τον προσδιορισμό μιας μοναδικής τιμής που ονομάζεται "hash code". Με απλά λόγια, αυτό σημαίνει ότι κάθε στοιχείο ενός συνόλου κατακερματισμού συνδέεται με έναν κώδικα κατακερματισμού.
Ταξινόμηση λιστών και χρήση iterators
Για να εργαστείτε με τους καταλόγους ακόμη πιο αποτελεσματικά, μπορείτε να τα ταξινομήσετε και να χρησιμοποιήσετε τους iterators.
- Το Java API περιλαμβάνει επίσης την κατηγορία συλλογών. Μια από τις πιο πρακτικές μεθόδους εδώ είναι η μέθοδος ταξινόμησης. Όλες οι μέθοδοι της κατηγορίας συλλογών είναι στατικές μέθοδοι, επομένως δεν χρειάζεται να δηλωθούν ξανά. Για παράδειγμα, εάν δημιουργήσατε ένα ArrayList με όνομα "animal", μπορείτε να παραγγείλετε τις τιμές του χρησιμοποιώντας την εντολή Collections.sort (animal); Μπορείτε να εισαγάγετε την κλάση Συλλογές με την εντολή »import java.util.Collections;«.
- Ένα iterator είναι ένα αντικείμενο που κυκλοφορεί μέσα από μια συλλογή και λαμβάνει και μπορεί να διαγράψει τιμές. Εισάγετε το απαιτούμενο πακέτο με την εντολή »import java.util.iterator;«. Σε αυτή την περίπτωση δημιουργήσαμε ήδη ένα LinkedList που ονομάζεται "ζώα". Τώρα μπορείτε να ορίσετε τον iterator με την εντολή »Iterator it = animals.iterator ();«. Αν εκτελείτε τώρα την εντολή »System.out.println (it.next ());«, το πρώτο στοιχείο του LinkedList εξάγεται. Αν εκτελέσετε ξανά την εντολή, το iterator μετακινείται ένα βήμα παραπέρα και εξάγει το δεύτερο στοιχείο. Και εδώ, μπορείτε να αφαιρέσετε στοιχεία με μια μέθοδο αφαίρεσης. Υπάρχει επίσης η μέθοδος hasNext, την οποία μπορείτε να χρησιμοποιήσετε για να ελέγξετε αν υπάρχει κάποιο άλλο στοιχείο.
Java: δημιουργία και χρήση αρχείων
Μπορείτε εύκολα να δημιουργήσετε και να χρησιμοποιήσετε τα δικά σας αρχεία σε Java.
- Για να το κάνετε αυτό, πρέπει πρώτα να εισαγάγετε το απαιτούμενο πακέτο χρησιμοποιώντας την εντολή "import java.io.File;". Στη συνέχεια, ορίστε ένα αρχείο με μια κατάλληλη διαδρομή χρησιμοποιώντας την εντολή »File file = new File (" C: \\ data \\ input-file.txt "), " με "if (x.exists ()) { ελέγξτε αν υπάρχει το αρχείο. Λαμβάνετε το όνομα του αρχείου με το "x.getName ()".
- Στο επόμενο βήμα μπορείτε να δημιουργήσετε ένα νέο σαρωτή με την εντολή »Scanner sc = new Scanner (x), «. Και πάλι, μπορείτε να χρησιμοποιήσετε εντολές όπως "sc.next ()" ή "sc.hasNext ()" για να διαβάσετε τα δεδομένα από ένα αρχείο. Λειτουργεί πολύ καλά σε μια στιγμή βρόχο. Μην ξεχάσετε να κλείσετε το αρχείο με "sc.close ();" στο τέλος.
- Για να μπορέσετε να γράψετε σε αρχεία, πρέπει πρώτα να προσθέσετε την εντολή "import java.util.Formatter;" στον κώδικα σας. Η εντολή »Formatter f = νέος μορφοποιητής (" C: \\ CHIP \\ test.txt ")" δημιουργεί τώρα ένα αρχείο με όνομα "test.txt" στην καθορισμένη διαδρομή.
- Για να μπορέσετε να γράψετε στο αρχείο, μπορείτε να χρησιμοποιήσετε την εντολή »f.format ("% s% s% s, "", "Max", "Mustermann \ r \ n"); % s "για μια συμβολοσειρά που αντικαθίσταται από την πρώτη παράμετρο, το δεύτερο"% s "από τη δεύτερη παράμετρο κλπ. Το πρόγραμμα μεταβαίνει στην επόμενη γραμμή πατώντας το πλήκτρο" \ r \ n ".
Αυτό είναι όπου τελειώνει η σειρά μαθημάτων μας στη γλώσσα προγραμματισμού Java. Στην επόμενη πρακτική συμβουλή, θα σας δώσουμε μια εισαγωγή στον προγραμματισμό με την Python.