Java中List for循环的6种写法总结(推荐)
如下所示:
List<String> list = new ArrayList<String>();
/** * 方法一:最普通的不加思考的写法 * <p> * 优点:较常见,易于理解 * <p> * 缺点:每次都要计算list.size() */ for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); } /** * 方法二:数组长度提取出来 * <p> * 优点:不必每次都计算 * <p> * 缺点:1、m的作用域不够小,违反了最小作用域原则 2、不能在for循环中操作list的大小,比如除去或新加一个元素 */ int m = list.size(); for (int i = 0; i < m; i++) { System.out.println(list.get(i)); } /** * 方法三:数组长度提取出来 * <p> * 优点:1、不必每次都计算 2、所有变量的作用域都遵循了最小范围原则 * <p> * 缺点:1、m的作用域不够小,违反了最小作用域原则 2、不能在for循环中操作list的大小,比如除去或新加一个元素 */ for (int i = 0, n = list.size(); i < n; i++) { System.out.println(list.get(i)); } /** * 方法四:采用倒序的写法 * <p> * 优点:1、不必每次都计算 2、所有变量的作用域都遵循了最小范围原则 * <p> * 缺点:1、结果的顺序会反 2、看起来不习惯,不易读懂 * <p> * 适用场合:与显示结果顺序无关的地方:比如保存之前数据的校验 */ for (int i = list.size() - 1; i >= 0; i--) { System.out.println(list.get(i)); } /** * 方法五:Iterator遍历 * <p> * 优点:简洁 * <p> * 缺点: */ for (Iterator<String> it = list.iterator(); it.hasNext();) { System.out.println(it.next()); } /** * 方法六:jdk1.5新写法 * <p> * 优点:简洁结合泛型使用更简洁 * <p> * 缺点:jdk1.4向下不兼容 */ for (Object o : list) { System.out.println(o); }
以上这篇Java中List for循环的6种写法总结(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
详解Java中的增强 for 循环 foreach
foreach 是 Java 中的一种语法糖,几乎每一种语言都有一些这样的语法糖来方便程序员进行开发,编译期间以特定的字节码或特定的方式来对这些语法进行处理.能够提高性能,并减少代码出错的几率.在 Java 中还有比如 泛型.自动拆箱.自动装箱.内部类.枚举等等. foreach 是用来对数组或者集合进行遍历的语法.具体语法如下: for(元素类型 ele : 数组名/Iterable 实例){ } 下面我们用 foreach 来对数组和一个集合进行遍历: int [] array = {1,2
-
Java 跳出递归循环问题解决办法
使用异常跳出循环 1.如果方法体内含有需要抛出异常的对象,让方法直接抛出异常,不要在方法体内捕获 public void xxxx() throws Exception 2.如果方法体内不含有需要抛出异常的对象 class Test { static class StopMsgException extends RuntimeException { } public static void main(String args[]) { try { run(0); } catch (StopMsgE
-
Java编程几个循环实例代码分享
有关Java循环的内容,编程中还是比较常用的,下面分享给大家几个循环的示例代码,练习一下. 1.循环输出1到100之间所有能被3或能被4整除的数. package com.hz.loop02; /** * 1.循环输出1到100之间所有能被3或能被4整除的数. * @author ztw * */ public class Practice01 { public static void main(String[] args) { for (int i=1;i<=100;i++){ //判断下是否
-
java高效打印一个二维数组的实例(不用递归,不用两个for循环)
打印1个元素,不让循环变量i++,走出思维定式(执行一次循环体,就i++).public class OneForPrint2DArr { public static void main(String[] args) throws Exception { int[][] a = { { 1, 2, 3 }, { 4, 5} }; for (int i = 0, j = 0; i < a.length;) { System.out.println(a[i][j]); j++; if (j >=
-
深入了解java8的foreach循环
虽然java8出来很久了,但是之前用的一直也不多,最近正好学习了java8,推荐一本书还是不错的<写给大忙人看的javase8>.因为学习了Java8,所以只要能用到的地方都会去用,尤其是Java8的Stream,感觉用起来觉得很方便,因为点点点就出来了,而且代码那么简洁.现在开始慢慢深入了解java8,发现很多东西不能看表面. 比如常规遍历一个集合,下面给出例子: 1.首先遍历一个List 方式1.一开始是这样的: public static void test1(List<Strin
-
Java中List for循环的6种写法总结(推荐)
如下所示: List<String> list = new ArrayList<String>(); /** * 方法一:最普通的不加思考的写法 * <p> * 优点:较常见,易于理解 * <p> * 缺点:每次都要计算list.size() */ for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); } /** * 方法二:数组长度提取出来 * <p&g
-
详解Java中数组判断元素存在几种方式比较
1. 通过将数组转换成List,然后使用List中的contains进行判断其是否存在 public static boolean useList(String[] arr,String containValue){ return Arrays.asList(arr).contains(containValue); } 需要注意的是Arrays.asList这个方法中转换的List并不是java.util.ArrayList而是java.util.Arrays.ArrayList,其中java.
-
JS中for循环的四种写法示例(入门级)
目录 1. 传统for循环 2. for of 循环 3. for in 循环 4. forEach方法 附完整实例: 总结 1. 传统for循环 for (init; cond; inc) { // body } 与C++或Java类似,for关键字后用小括号描述循环设置,在小括号中用两个分号;将循环设置隔断为三个部分,分别为: init初始化语句(指令),在整个循环开始前执行 cond条件(逻辑表达式),表示循环继续的条件 inc自增语句(指令),在每次循环体结束以后执行 整个循环的执行步骤
-
Java中的Spring循环依赖详情
目录 什么是循环依赖? 那么循环依赖是个问题吗? Bean的生命周期 三级缓存 解决循环依赖思路分析 Spring到底解决了哪种情况下的循环依赖 总结 什么是循环依赖? 很简单,就是A对象依赖了B对象,B对象依赖了A对象. 比如: 那么循环依赖是个问题吗? 如果不考虑Spring,循环依赖并不是问题,因为对象之间相互依赖是很正常的事情. 比如: 这样,A,B就依赖上了. 但是,在Spring中循环依赖就是一个问题了,为什么? 因为,在Spring中,一个对象并不是简单new出来了,而是会经过一系
-
Java中增强for循环在一维数组和二维数组中的使用方法
一维数组: int[] a={1,2,3}; for(int i:a) { System.out.print(i+" "); } 输出:1 2 3 二维数组: import java.util.Scanner; public class tet { public static void main(String[] args) { //int[][] b={{1,2,3},{4,5,6}};行 int[][] a=new int[5][];//必须明确行数 for(int i=0;i&l
-
java中进程与线程_三种实现方式总结(必看篇)
一:进程与线程 概述:几乎任何的操作系统都支持运行多个任务,通常一个任务就是一个程序,而一个程序就是一个进程.当一个进程运行时,内部可能包括多个顺序执行流,每个顺序执行流就是一个线程. 进程:进程是指处于运行过程中的程序,并且具有一定的独立功能.进程是系统进行资源分配和调度的一个单位.当程序进入内存运行时,即为进程. 进程的三个特点: 1:独立性:进程是系统中独立存在的实体,它可以独立拥有资源,每一个进程都有自己独立的地址空间,没有进程本身的运行,用户进程不可以直接访问其他进程的地址空间. 2:
-
Java中的Random()函数及两种构造方法
Java中存在着两种Random函数: java.lang.Math.Random; 调用这个Math.Random()函数能够返回带正号的double值,该值大于等于0.0且小于1.0,即取值范围是[0.0,1.0)的左闭右开区间,返回值是一个伪随机选择的数,在该范围内(近似)均匀分布. java.util.Random 下面Random()的两种构造方法: Random():创建一个新的随机数生成器. Random(long seed):使用单个 long 种子创建一个新的随机数生成器. 我
-
Java中获取键盘输入值的三种方法介绍
程序开发过程中,需要从键盘获取输入值是常有的事,但Java它偏偏就没有像c语言给我们提供的scanf(),C++给我们提供的cin()获取键盘输入值的现成函数!Java没有提供这样的函数也不代表遇到这种情况我们就束手无策,请你看以下三种解决方法吧: 以下将列出几种方法: 方法一:从控制台接收一个字符,然后将其打印出来 public static void main(String [] args) throws IOException{ System.out.print("Enter a char
-
Java中避免过多if-else的几种方法
太多的if-else不太直观,难以维护. 以下面代码为例,展示几种替代if else的方法. String input = "three"; @Test public void testElse() { if ("one".equals(input)) { System.out.println("one"); } else if ("two".equals(input)) { System.out.println("
-
Java中遍历Map集合的5种方式总结
方式一 通过Map.keySet使用iterator遍历 @Test public void testHashMap1() { Map<Integer, String> map = new HashMap<>(); map.put(001, "Java"); map.put(002, "数据库"); map.put(003, "Vue"); System.out.println(map); // 通过Map.keySet使
随机推荐
- CSS基础 CSS选择符
- SQL select distinct的使用方法
- ORACLE应用经验(1)
- python实现清屏的方法
- ThinkPHP5邮件发送服务封装(可发附件)
- php简单实现批量上传图片的方法
- PHP错误Warning:mysql_query()解决方法
- RESPONSE.WRITE和<%=%的区别
- C#中const 和 readonly 修饰符的用法详解
- mysql 5.7.11 zip安装配置方法图文教程
- 发两个小东西,ASP/PHP 学习工具。 用JavaScript写的
- 清除猖狂的Sxs.exe病毒
- jQuery基础知识filter()和find()实例说明
- javascript addBookmark 加入收藏 多浏览器兼容
- ASP.NET页面请求超时时间设置多种方法
- java计算自幂数和水仙花数
- PHP中set error handler函数用法小结
- 你应该知道的区块链运作7个核心技术
- Android编程处理窗口控件大小,形状,像素等UI元素工具类
- SpringBoot集成阿里巴巴Druid监控的示例代码