Jeśli jesteś programistą Java, prawdopodobnie spotkałeś się z sytuacją, w której musisz wykonać iterację po tablicy lub kolekcji. W przeszłości wymagało to napisania dużej ilości standardowego kodu w celu utworzenia pętli i iteracji po elementach. Jednak w Javie wprowadzono ulepszoną pętlę for , która znacznie ułatwia iterację po kolekcjach i tablicach. W tym artykule dowiemy się o ulepszonej pętli for w Javie, która zapewnia prostszy i bardziej zwięzły sposób iteracji po tablicach i kolekcjach.
Jaka jest ulepszona pętla for w Javie?
Ulepszona pętla for , znana również jako pętla for-each , zapewnia zwięzły sposób iteracji po kolekcji lub tablicy bez potrzeby stosowania jawnego iteratora. Składnia ulepszonej pętli for jest następująca:for (elementType element : collection) {
// code block to execute
}
W tej składni elementType jest typem danych elementów kolekcji , a element jest zmienną reprezentującą każdy element kolekcji. Kolekcja to kolekcja , po której chcesz iterować. Rzućmy okiem na przykład, aby zobaczyć, jak działa udoskonalona pętla for .
Ulepszony przykład pętli
Załóżmy, że mamy tablicę liczb całkowitych, po których chcemy wykonać iterację i wydrukować każdy element. Korzystając z ulepszonej pętli for , możemy to zrobić w zaledwie kilku linijkach kodu :public class EnhancedForLoop {
public static void main(String[] args) {
int[] numbers = {1, 2, 3, 4, 5};
for (int number : numbers) {
System.out.println(number);
}
}
}
Wyjście:
1 2 3 4 5
W tym przykładzie deklarujemy tablicę liczb całkowitych zwanych liczbami i inicjujemy ją pewnymi wartościami. Następnie używamy ulepszonej pętli for do iteracji po tablicy liczb i wypisania każdego elementu. Jak widać, składnia ulepszonej pętli for jest znacznie prostsza niż tradycyjna pętla for . Nie musimy śledzić indeksu ani martwić się długością tablicy. Ulepszona pętla for zajmuje się tym wszystkim za nas. Do iteracji po kolekcji możemy także użyć ulepszonej pętli for . Przyjrzyjmy się przykładowi iteracji po ArrayList of Strings.
// Here is the example of an enhanced for loop to iterate over a collection
import java.util.ArrayList;
public class EnhancedForLoop {
public static void main(String[] args) {
// use the enhanced for loop to iterate over the `names` ArrayList ArrayList<String> names = new ArrayList<String>();
names.add("Alice");
names.add("Bob");
names.add("Charlie");
for (String name : names) {
System.out.println(name);
}
}
}
Wyjście:
Alicja Bob Charlie
W tym przykładzie tworzymy ArrayList of Strings zwaną nazwami i dodajemy do niej pewne wartości. Następnie używamy ulepszonej pętli for do iteracji po nazwach ArrayList i wypisujemy każdy element. Ulepszona pętla for jest nie tylko łatwiejsza do odczytu i zapisu, ale także bezpieczniejsza. Eliminuje to możliwość wystąpienia błędów pojedynczych i sprawia, że kod jest bardziej zwięzły i czytelny.
GO TO FULL VERSION