Sintassi Java for loop: “for (T obj: objects)”

Mi sono imbattuto in una syntax Java che non ho mai visto prima. Mi stavo chiedendo se qualcuno potesse dirmi cosa sta succedendo qui.

for (ObjectType objectName : collectionName.getObjects()) 

Si chiama for-each o enhanced for statement. Vedi il JLS §14.14.2 .

È lo zucchero sintattico fornito dal compilatore per iterare su Iterable e array. I seguenti sono modi equivalenti per scorrere su un elenco:

 List foos = ...; for (Foo foo : foos) { foo.bar(); } // equivalent to: List foos = ...; for (Iterator iter = foos.iterator(); iter.hasNext();) { Foo foo = iter.next(); foo.bar(); } 

e questi sono due modi equivalenti per scorrere su un array:

 int[] nums = ...; for (int num : nums) { System.out.println(num); } // equivalent to: int[] nums = ...; for (int i=0; i 

Ulteriori letture

  • Come è Java per il codice di loop generato dal compilatore
  • Il ciclo For-Each

La variabile objectSummary contiene l’object corrente di tipo S3ObjectSummary restituito da objectListing.getObjectSummaries () e iterate sulla raccolta.

Ecco un esempio di questo potenziato per il ciclo da esercitazioni Java

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

In questo esempio, l’elemento variabile contiene il valore corrente dall’array di numeri.

L’output è il seguente:

 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 

Spero che questo ti aiuti !

si … Questo è per ogni ciclo in java.

Generalmente questo ciclo è utile quando si recuperano dati o oggetti dal database.

Syntex:

 for(Object obj : Collection obj) { //Code enter code here } 

Esempio :

 for(User user : userList) { System.out.println("USer NAme :" + user.name); // etc etc } 

Questo è per ogni ciclo.

aumenterà automaticamente. uno ad uno dalla raccolta ai dati degli oggetti USer è stato compilato. e lavorando.

Questo è il valore per ogni syntax del ciclo. È in loop attraverso ogni object nella raccolta restituita da objectListing.getObjectSummaries() .

per ogni S3ObjecrSummary in objectListing.getObjectSummaries ()

passa attraverso ogni elemento della collezione

Sì, è chiamato il ciclo for-each. Gli oggetti nella collectionName verranno assegnati uno dopo l’altro dall’inizio di quella raccolta, al riferimento all’object creato, ‘objectName’. Quindi in ogni iterazione del ciclo, al “objectNome” verrà assegnato un object dalla raccolta “collectionName”. Il ciclo terminerà una volta quando tutti gli elementi (oggetti) della raccolta “collectionName” sono stati assegnati o semplicemente gli oggetti da ottenere sono finiti.

for (ObjectType objectName: collectionName.getObjects ()) {// loop body> // È ansible utilizzare il ‘objectName’ qui come necessario e gli oggetti diversi saranno // reepresentati da esso in ogni iterazione. }

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