尽管在Java中,有很多方法可以在数组上进行循环,包括经典的 for 循环, 带有长度计数器的 while 循环,但没有什么能与Java 1.5 的foreach 循环 相媲美 ,它使迭代 变得 超级简单和超级酷。当我们需要遍历数组中的每个元素,并对它们进行一些操作 时,例如过滤、 转换 或简单的 打印, foreach 循环就会发挥它的全部威力。传统的for 循环和Java 1.5的foreach 循环 没有太大的区别 ,只是前者有 计数器 和 条件,每次迭代后都要检查。
另一方面, foreach 循环在引擎盖下完成这一任务。但是这种优雅是以控制为代价的,因为你不能用计数器来控制迭代,所以根据你的需要,你必须在它们之间做出选择。
就像在 上一篇 文章 中 ,我们了解了 对HashMap中的每个条目进行迭代的最佳方法,在这篇文章中,我们将 使用Java 1.5 增强型for 循环和传统的for循环对字符串数组进行迭代。
遍历数组的Java foreach循环示例
以下是如何在Java中迭代字符串数组的完整代码示例。我们的数组包含一个编程语言的列表,我们将循环这些语言并打印其名称。在经典for循环的情况下,我们将只遍历到数组的中间部分,只是为了显示条件中计数器的力量。
展示如何迭代数组的Java程序
/**
*
* Best way to loop over array in Java. Though Java 1.5 foreach loop
* is most elegant way of iterating over array, it doesn't provide any
* counter, which is available in classic for loop. So, depending upon, whether
* you need a counter or not, you can decide between Java 1.5 foreach or traditional
* for loop.
*
* @author Javin
*/
public class JavaForEachOverArray {
public static void main(String args[]) {
String[] languages = {"Java", "Scala", "C++", "Ruby", "Python", "Perl"};
// looping over array using foreach loop
System.out.println("Iterating over String array using Java 1.5 foreach loop");
for(String str : languages){
System.out.println(str);
}
// looping over classical for loop
System.out.println("Looping over String array using for loop");
for(int i=0; i<languages.length/2; i++){
System.out.println(languages[i]);
}
}
}
Output: Iterating over String array using Java 1.5 foreach loop Java Scala C++ Ruby Python Perl Looping over String array using for loop Java Scala C++
以上就是关于如何在Java中对字符串数组 进行迭代的全部内容。你可以用同样的技术在任何基数或对象数组上循环,例如整数、 浮点数、 双数 或 布尔 数组。我个人更喜欢 增强的for 循环,而不是其他循环结构,如果我必须一个一个地处理所有的元素,否则,你可以使用while、for或do while来遍历Java中的任何阵列。
相关的Java编程教程来自Java67博客
感谢您阅读本文,如果您喜欢这个在Java中使用经典foreach循环遍历数组的例子,那么请与您的朋友和同事分享。如果你有任何问题或反馈,请给我留言。