Я наткнулся на некоторый синтаксис Java, которого я раньше не видел. Мне было интересно, может ли кто-нибудь сказать мне, что здесь происходит.
for (ObjectType objectName : collectionName.getObjects())
Я наткнулся на некоторый синтаксис Java, которого я раньше не видел. Мне было интересно, может ли кто-нибудь сказать мне, что здесь происходит.
for (ObjectType objectName : collectionName.getObjects())
Он назывался для каждого или расширенного for
оператора. См. JLS & sect; 14.14.2.
синтаксический сахар, предоставленный компилятором для итерации по Iterable
и массивы. Ниже перечислены эквивалентные способы перебора по списку:
List<Foo> foos = ...;
for (Foo foo : foos)
{
foo.bar();
}
// equivalent to:
List<Foo> foos = ...;
for (Iterator<Foo> iter = foos.iterator(); iter.hasNext();)
{
Foo foo = iter.next();
foo.bar();
}
и это два эквивалентных способа итерации по массиву:
int[] nums = ...;
for (int num : nums)
{
System.out.println(num);
}
// equivalent to:
int[] nums = ...;
for (int i=0; i<nums.length; i++)
{
int num = nums[i];
System.out.println(num);
}
Переменная objectSummary содержит текущий объект типа S3ObjectSummary, возвращенный из objectListing.getObjectSummaries() и перебирает коллекцию. p >
Вот пример этого расширенного цикла для Java Tutorials
class EnhancedForDemo {
public static void main(String[] args){
int[] numbers = {1,2,3,4,5,6,7,8,9,10};
for (int item : numbers) {
System.out.println("Count is: " + item);
}
}
}
В этом примере элемент переменной содержит текущее значение из массива чисел.
Выход выглядит следующим образом:
Count is: 1
Count is: 2
Count is: 3
Count is: 4
Count is: 5
Count is: 6
Count is: 7
Count is: 8
Count is: 9
Count is: 10
Надеюсь, это поможет!
yes... Это для каждого цикла в java.
Обычно этот цикл становится полезным, когда вы извлекаете данные или объект из базы данных.
Syntex:
for(Object obj : Collection obj)
{
//Code enter code here
}
Пример:
for(User user : userList)
{
System.out.println("USer NAme :" + user.name);
// etc etc
}
Это для каждого цикла.
он будет увеличиваться автоматически. один за другим из коллекции в данные объекта USER был заполнен. и работает.
Это для каждого синтаксиса цикла. Это цикл через каждый объект в коллекции, возвращаемой objectListing.getObjectSummaries()
.
для каждого S3ObjecrSummary в объектеListing.getObjectSummaries()
он перебирает каждый элемент в коллекции
Да, он называется циклом for-each. Объектам в коллекцииName присваивается один за другим с начала этой коллекции, к созданной ссылке на объект, 'objectName'. Таким образом, в каждой итерации цикла, "objectName" будет назначен объект из коллекции "collectionName". Цикл будет завершен один раз, когда все элементы (объекты) коллекции 'collectionName' будут назначены или просто объекты, которые будут получены.
for (ObjectType objectName: collectionName.getObjects()) { // тело циклa > // Вы можете использовать "objectName" здесь по мере необходимости, и различные объекты будут//повторно представлены им на каждой итерации. }
public class ForEachLoopExample {
public static void main(String[] args) {
System.out.println("For Each Loop Example: ");
int[] intArray = { 1,2,3,4,5 };
//Here iteration starts from index 0 to last index
for(int i : intArray)
System.out.println(i);
}
}