Lär dig Java-programmering: Hur man använder listor, trådar och Co.
I den sista artikeln i vår Java-serie förklarar vi hur man hanterar trådar, listor, undantag och filer på Java på rätt sätt.
Java: vad är undantag?
Om du ännu inte har arbetat med Java kan du läsa våra "Grunder" här först. Olika exempelkoder finns i bildgalleriet i slutet av artikeln.
- Ett undantag är ett problem som uppstår medan programmet körs.
- Det finns en speciell kod för att hantera ett sådant kommando. För att göra detta, skriv först "försök {" och sedan koden som ska köras. Skriv sedan "} catch (Undantag e) {" och sedan olika kommandon som ska utföras om föregående operation inte är möjlig. Glöm inte att lägga till ett stag i slutet.
- Ett kastkommando är också mycket praktiskt. Ett exempel på detta är koden »int div (int a, int b) kastar« ⮩ »ArithmeticException {« ⮩ »if (b == 0) {« ⮩ »kasta ny ArithmeticException (" Division by 0! ");« ⮩ »} Annars {« ⮩ »returnera a / b;« ⮩ »}« ⮩ »}«. Kastmeddelandet i metoden definierar vilken undantagstyp metoden kan få. Kastnyckelordet avgör vad som ska hända med detta undantag.
- Praktiskt: Ett enda försök kan innehålla flera fångstblock.
Använd trådar i Java
Trådar låter dig köra olika kommandon i Java på samma gång. Det finns två olika sätt att skapa en tråd.
- Å ena sidan kan en viss klass ärva från klassen "tråd". Skriv till exempel först "klass Loader extends Thread {". Då måste du definiera en metod med "public void run () {" som beskriver trådens funktioner. I en annan klass kan du nu använda kommandot "Loader obj = new Loader ();" för att använda metoden "obj.start ();" för att starta tråden.
- Alternativt kan du implementera "Runnable" -gränssnittet i en klass. Du kan göra detta med kommandot "klass Loader implementerar Runnable {". Definiera en körmetod igen. Nu kan du starta tråden i en annan klass med koden "Tråd t = ny tråd (ny Loader ());" ⮩ "t.start ();"
- Tips: Du kan använda kommandot "Thread.sleep (1000);" för att låta tråden vila en stund. Observera dock att detta kommando genererar en InterruptException.
Skapa listor i Java
Det finns två olika typer av listor i Java: "ArrayList" och "LinkedList".
- Normalt kan matriser i Java bara lagra ett visst antal objekt. Det finns dock en funktion som heter "ArrayList" i Java API. Skriv först "import java.util.ArrayList;" för att importera det obligatoriska paketet. Nu kan du använda ArrayList-färgerna = new ArrayList (); kommandot för att skapa en ny lista. Alternativt kan du använda ArrayList-färgerna = new ArrayList (10); kommandot för att skapa en lista som specificerar datatypen och storleken i förväg.
- Nu kan du lägga till något i listan med kommandot »colors.add (" ... ");«. Med »färger.remove (" ... ");« denna process kan vändas. Du kan också använda »colors.concepts (...);« för att fråga om listan innehåller ett visst element, eller använda »colors.get (int x);« kommandot för att få ett värde med ett visst index. Slutligen kan du använda »färger.storlek ();« för att fråga antalet element i listan och använda »färger.klart ();« för att radera alla element i listan.
- Alternativt finns det också "LinkedList", som du kan importera med kommandot »import java.util.LinkedList;«. Kommandona är desamma här; men du måste skriva "LinkedList" varje gång istället för "ArrayList". En ArrayList är mer lämpad för att lagra objekt som kan nås senare. Du bör använda en LinkedList om du vill ändra data.
Java: Använd HashMap
I listorna ovan har varje objekt ett (heltal) -index. HashMap används för att lagra data med ett par värden som består av "Nyckel" och "Objekt".
- Du importerar HashMap med kommandot »import java.util.HashMap;«. I likhet med listorna kan du nu skapa en HashMap med kommandot »HashMap points = new HashMap ();«.
- Nästa, till exempel, kan du lägga till kommandot »points.put (" Amy ", 154);«. Kommandot »System.out.println (" points.get ("Amy")); «matar nu ut värdet 154. Återigen kan du använda borttagningsmetoder för att ta bort det.
- En HashMap kan inte innehålla objekt med två identiska nycklar. Ett objekt skulle helt enkelt skrivas över. Metoderna "containKey" och "containValue" är mycket praktiska och kan användas för att kontrollera om ett objekt eller en nyckel finns i HashMap.
- Det finns också så kallade "hash-uppsättningar". En uppsättning är en samling värden, varigenom två identiska värden aldrig kan existera. Importen java.util.HashSet; används för att importera. Till exempel kan du skapa en ny uppsättning med kommandot »HashSet set = new HashSet ();«. Nu kan du lägga till element till detta HashSet med kommandot »set.add (" ... ");«. Kommandot »System.out.println (set);« matar slutligen ut alla kommandon i uppsättningen.
- Vanligtvis upprätthålls inte ordningen på elementen inom en hashuppsättning konsekvent. Men om du vill kan du använda ett "LinkedHashSet".
- Förresten: En hashtabell lagrar information genom en mekanism som kallas "hashing", där varje värde på en nyckel används för att bestämma ett unikt värde som kallas "hash-kod". Enkelt uttryckt betyder detta att varje element i en hashuppsättning är länkad till en hashkod.
Sortera listor och använd iteratorer
För att arbeta med listor ännu mer effektivt kan du sortera dem och använda iteratorer.
- Java API inkluderar också samlingsklassen. En av de mest praktiska metoderna här är sorteringsmetoden. Alla metoder i samlingsklassen är statiska metoder, så de behöver inte deklareras igen. Om du till exempel skapade en ArrayList med namnet "djur" kan du beställa dess värden med kommandot Collections.sort (animal); Du kan importera samlingsklassen med kommandot »import java.util.Collections;«.
- En iterator är ett objekt som cirkulerar genom en samling och tar emot och kan ta bort värden. Du importerar det nödvändiga paketet med kommandot »import java.util.iterator;«. I det här fallet har vi redan skapat en LinkedList som heter "djur". Du kan nu definiera iteratorn med kommandot »Iterator it = animal.iterator ();«. Om du nu kör kommandot »System.out.println (it.next ());«, matas ut det första elementet i LinkedList. Om du kör kommandot igen, flyttar iteratorn ett steg längre och matar ut det andra elementet. Även här kan du ta bort element med en borttagningsmetod. Det finns också metoden hasNext, som du kan använda för att kontrollera om ett annat element finns.
Java: skapa och använda filer
Du kan enkelt skapa och använda dina egna filer i Java.
- För att göra detta måste du först importera det obligatoriska paketet med kommandot "import java.io.File;". Definiera sedan en fil med en lämplig sökväg med kommandot »File file = new File (" C: \\ data \\ input-file.txt ");«. Med »if (x.exists ()) {« kan du kontrollera om filen finns. Du får namnet på filen med "x.getName ()".
- I nästa steg kan du skapa en ny skanner med kommandot »Scanner sc = new Scanner (x);«. Återigen kan du använda kommandon som "sc.next ()" eller "sc.hasNext ()" för att läsa data från en fil. Det fungerar mycket bra i en stundslinga. Glöm inte att stänga filen med "sc.close ();" i slutet.
- För att kunna skriva till filer måste du först lägga till kommandot "import java.util.Formatter;" till din kod. Kommandot »Formatter f = new Formatter (" C: \\ CHIP \\ test.txt ");« skapar nu en fil med namnet "test.txt" på den angivna sökvägen.
- För att kunna skriva till filen kan du använda kommandot »f.format ("% s% s% s, "1", "Max", "Mustermann \ r \ n"); «. % s "för en sträng som ersätts av den första parametern, den andra"% s "med den andra parametern osv. Programmet hoppar till nästa rad genom att trycka på" \ r \ n ".
Det är här vår tutorial-serie om Java-programmeringsspråket slutar. I nästa praktiska tips ger vi dig en introduktion till programmering med Python.