Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 1044995
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 16, 20262026-05-16T15:55:02+00:00 2026-05-16T15:55:02+00:00

I was browsing over the following code example: public class GenericTest { public static

  • 0

I was browsing over the following code example:

public class GenericTest {
  public static void main (String[] args) {
    ArrayList<String> myList = new ArrayList<String>();
    String s1 = "one";
    String s2 = "two";
    String s3 = "three";

    myList.add(s1); myList.add(s2); myList.add(s3);

    Iterator<String> itr = myList.iterator();
    String st;

    while (itr.hasNext()) {
      st = itr.next();
      System.out.println(st);
    }
  }
}

I’m wondering what are the benefits of using an implementation of the Iterator interface instead of using a plain-old for-each loop?

 for (String str : myList) {
   System.out.println(str);
 }

If this example is not relevant, what would be a good situation when we should use the Iterator?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-16T15:55:03+00:00Added an answer on May 16, 2026 at 3:55 pm

    The For-Each Loop was introduced with Java 5, so it’s not so “old”.

    If you only want to iterate a collection you should use the for each loop

    for (String str : myList) {
       System.out.println(str);
    }
    

    But sometimes the hasNext() method of the “plain old” Iterator is very useful to check if there are more elements for the iterator.

    for (Iterator<String> it = myList.iterator(); it.hasNext(); ) {
       String str = it.next();
       System.out.print(str);
       if (it.hasNext()) {
          System.out.print(";");     
       }
    }
    

    You can also call it.remove() to remove the most recent element that was returned by next.

    And there is the ListIterator<E> which provides two-way traversal it.next() and it.previous().

    So, they are not equivalent. Both are needed.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I was browsing over some code in the OpenCV page when it came to
browsing some html code I find a text input coded as: <input type=text name=Email<%=orderRow.ID
While browsing about changing identity with tor I have the following script: from TorCtl
While browsing SO I sometimes see EOFD for example: ftp -vn <$hostname> <<EOFD Yes
As I'm browsing through a Rails source code, it contains the line: @@autoloads =
I was going over the C++ FAQ Lite online. I was browsing inlines again
I was browsing my teacher's code when I stumbled across this: Order* order1 =
I was browsing over the net for some information about CryptUnprotectData and WZC. I
Was browsing the jQuery source code when I met this line: jQuery(this)[ state ?
I'm once again looking into the world of tabbed browsing and Sessions. Looking over

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.