Vad är en Java-lista?
Java-listor är särskilt lämpliga för scenarier där storleken på en datamängd inte är klar från början eller om storleken förväntas förändras över tid. Vi visar dig konkreta exempel på hur du använder Java-listor och vilka operationer du kan utföra med dem.
Vad kan Java-listor användas till?
Listor är en av de grundläggande datastrukturerna i Java-programmering och kan användas på många olika sätt. De innehåller element som är ordnade i en sekvens. Du kan lägga till, ändra, ta bort eller söka efter element i en lista. Java-listor kan innehålla objekt som tillhör olika klasser. Det är också möjligt att lagra dubbla element eller nollelement. Dessutom stöder Java-listor generiska klasser och metoder, vilket garanterar typsäkerhet.
Listor kan användas för databasapplikationer. Här används de för att lagra och komma åt stora datamängder från databasfrågor. I grafiska användargränssnitt används Java-listor ofta för att visa en lista med element, till exempel alternativ i en rullgardinsmeny eller olika artiklar i en webbutik.
Java-listor är också oumbärliga i algoritmer och datastrukturer. De används i sorteringsalgoritmer, sökalgoritmer och stack- och köstrukturer. I nätverksapplikationer kan listor underlätta hanteringen av anslutningar och socklar.
Vilka listmetoder har Java?
Java-listor tillhör gränssnittet Collection och måste importeras från paketet java.util. Med Java ArrayList, LinkedList, Vector och Stack finns det olika implementeringsklasser att välja mellan. Du kan deklarera de olika instanserna av listorna med följande kod:
List linkedList = new LinkedList(); // LinkedList
List arrayList = new ArrayList(); // ArrayList
List vecList = new Vector(); // Vector
List stackList = new Stack(); //StackJavaHär är några av de viktigaste metoderna du kan använda för Java-listor:
int size(): Bestämmer antalet element i en listavoid add(int index, E element): Lägger till ett element på en specifik positionboolean isEmpty(): Kontrollerar om en lista är tomvoid clear(): Tar bort alla element från en listaboolean contains(Object o): Returnerar värdettrueom objektetofinns i listanboolean add(E e): Lägger till ett element i slutet av en listaboolean remove(Object o): Tar bort det första förekomsten av ett elementE get(int index): Ersätter eller infogar ett element vid ett angivet indexE set(int index, E element): Ersätter eller infogar ett element vid ett angivet indexObject[] toArray(): Returnerar en array som innehåller elementen från en listaList<E> subList(int fromIndex, int toIndex): Fångar alla element inom det angivna intervalletdefault void replaceAll(UnaryOperator<E> operator): Standardmetod i Java 8 som tillämpar unära Java-operatorer på varje element och sedan ersätter varje element med resultatet från operationen.
Hur man använder Java-listor
Nedan visar vi vanliga metoder som används när man arbetar med Java-listor. Dessa inkluderar att konvertera arrayer till listor och vice versa, samt att sortera, hämta och modifiera element.
Konvertera en array till en lista
För att konvertera en array till en lista kan du iterera genom arrayen med hjälp av loopar och lägga till elementen i listan ett efter ett med hjälp av metoden add().
import java.util.*;
public class ArrayToList{
public static void main(String args[]){
// Creating Array
String[] colors={"blue","green","red","yellow"};
System.out.println("Array: "+Arrays.toString(colors));
//Converting Array to List
List<String> list=new ArrayList<String>();
for(String color: colors){
list.add(color);
}
System.out.println("List: "+list);
}
}JavaDetta resulterar i följande utdata:
Array: [blue, green, red, yellow]
List: [blue, green, red, yellow]JavaKonvertera en lista till en array
Med metod toArray() kan du konvertera en lista till en array:
import java.util.*;
public class ListToArray{
public static void main(String args[]){
List<String> days = new ArrayList<String>();
days.add("Monday");
days.add("Tuesday");
days.add("Wednesday");
days.add("Thursday");
days.add("Friday");
days.add("Saturday");
days.add("Sunday");
// Converting ArrayList to Array
String[] array = days.toArray(new String[days.size()]);
System.out.println("Array: "+Arrays.toString(array));
System.out.println("List: "+days);
}
}JavaI utdata kan du se att elementen i arrayen och listan är identiska:
Array: [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]
List: [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]JavaAnropa och ändra element i en Java-lista
Med metoden get() kan du komma åt ett element vid ett specifikt index. Metoden set() låter dig ersätta ett element med ett annat element vid en specificerad position i listan.
import java.util.*;
public class ListExample{
public static void main(String args[]){
// Creating a List
List<String> letters=new ArrayList<String>();
// Adding elements
letters.add("a");
letters.add("b");
letters.add("c");
// get()
System.out.println("Element at index 1: "+letters.get(1));
// set()
letters.set(2, "d");
for(String letter: letters)
System.out.println(letter);
}
}JavaEftersom räkningen i Java börjar med index 0 får vi följande resultat:
Element at index 1: b
a
b
dJavaSortera en lista
Du kan sortera en Java-lista med hjälp av metoden .sort() från klassen Collections. Du kan iterera genom listan med hjälp av en loop och skriva ut elementen till konsolen ett efter ett:
import java.util.*;
class SortArrayList{
public static void main(String args[]){
// Creating a list of numbers
List<Integer> numbers=new ArrayList<Integer>();
numbers.add(4);
numbers.add(57);
numbers.add(92);
numbers.add(26);
// Sorting
Collections.sort(numbers);
for(Integer number: numbers)
System.out.println(number);
}
}JavaSiffrorna i Java-listan visas på skärmen från minsta till största:
4
26
57
92Java
