Подтвердить что ты не робот

Java для синтаксиса цикла: "for (T obj: objects)"

Я наткнулся на некоторый синтаксис Java, которого я раньше не видел. Мне было интересно, может ли кто-нибудь сказать мне, что здесь происходит.

for (ObjectType objectName : collectionName.getObjects())
4b9b3361

Ответ 1

Он назывался для каждого или расширенного 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);
}

Дальнейшее чтение

Ответ 2

Переменная 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

Надеюсь, это поможет!

Ответ 3

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 был заполнен. и работает.

Ответ 4

Это для каждого синтаксиса цикла. Это цикл через каждый объект в коллекции, возвращаемой objectListing.getObjectSummaries().

Ответ 5

для каждого S3ObjecrSummary в объектеListing.getObjectSummaries()

он перебирает каждый элемент в коллекции

Ответ 6

Да, он называется циклом for-each. Объектам в коллекцииName присваивается один за другим с начала этой коллекции, к созданной ссылке на объект, 'objectName'. Таким образом, в каждой итерации цикла, "objectName" будет назначен объект из коллекции "collectionName". Цикл будет завершен один раз, когда все элементы (объекты) коллекции 'collectionName' будут назначены или просто объекты, которые будут получены.

for (ObjectType objectName: collectionName.getObjects()) {   // тело циклa >   // Вы можете использовать "objectName" здесь по мере необходимости, и различные объекты будут//повторно представлены им на каждой итерации. }

Ответ 7

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);
    }

}