我们看这样一个示例

public class ForDemo {

public static void main(String[] args) {

// TODO Auto-generated method stub

System.out.println("Get set...");

for (int i = 0; i < 4; i++) {

System.out.println(i+"...");

}

}

}

测试结果

Get set...

0...

1...

2...

3...

上面的方法中没有太多的代码非常的简单,但是我们认为这样的迭代还是比较繁琐。Java8 提供了一种更简单、更优雅的替代方法:IntStranm 的 range 方法。我们重写上面的方法。

public static void main(String[] args) {

// TODO Auto-generated method stub

System.out.println("Get set...");

IntStream.range(0,4).forEach(i -> System.out.print(i +"..."));

}

测试结果

Get set...

0...1...2...3...

上面重写的例子我们看到并没有显著的减少代码量,但是降低了它的复杂性。这样做有两个重要的原因:

不同于 for,range 不会强迫我们初始化某个可变变量。

迭代会自动执行,所以我们不需要像循环索引一样定义增量。

java for新循环_Java 8 新语法习惯 (for 循环的函数替代方案)相关推荐

  1. java对象复制到新对象_java – 使用新生成的ID将Hibernate复制对象值复制到新对象中...

    我正在使用带有一些嵌套表的单列pk的关系数据库.我需要在项目中添加简单的归档.归档仅在应用程序到达特定状态时发生,因此我希望将现有的hibernate对象复制到新实例中,新实例将使用新ID保存,同时保 ...

  2. java 创建新文件_Java创建新文件

    创建文件是一种非常常见的IO操作,在这一小节中我们将学习如何在java中创建文件的几个方法. 在java中创建文件有三种流行的方法,下面将一个一个地来学习. 方法一:使用File.createNewF ...

  3. java 全局变量 命名规则_Java 基础 运算符 命名规则 变量 循环

    1.程序: 一组指示计算机执行行动或坐车判断的指令,通常用某种程序设计语言编写,运行于某种目标体系结构上. 2.软件 与计算机操作系统有关的计算机程序,规程.规则,以及可能有的文件,文档及数据 3.软 ...

  4. java冒泡排序内外循环_java中的冒泡排序、for循环的嵌套使用以及接口与抽象类的区别。...

    一.java冒泡排序. java中的冒泡排序为一种简单的交换排序方法.其基本思路是从头开始扫描需要排序的元素,在扫描的过程中依次的对相邻的元素进行比较,将关键字值大的元素后移,每经过一趟排序后,关键值 ...

  5. java字符串去重复_Java 8新特性:字符串去重

    本文首发与InfoQ. 8月19日,Oracle发布了JDK 8u20,JDK 8u20包含很多新特性,比如Java编译器更新.支持在运行时通过API来修改MinHeapFreeRatio和MaxHe ...

  6. java 流常用接口_java 8新特性5--使用集合流式API

    PS:向公众号发送关键字可以搜索文章哦! 使用集合的流式API 直接上代码了,常用api都有了,要点都在注释中 苹果类: packagejava8.stream;/***@authorqiang.xi ...

  7. java new thread参数_java开启新线程并传参的两种方法

    一.继承Thread类 步骤: 1):定义一个类A继承于Java.lang.Thread类. 2):在A类中覆盖Thread类中的run方法. 3):我们在run方法中编写需要执行的操作:run方法里 ...

  8. java启动100线程_Java启动新线程的几种方式(Runnable、Callable、CompletableFuture)

    一.实现Runnable接口 public classRunnableDemo implements Runnable {public voidrun() {try{ Thread.sleep(100 ...

  9. java多态的好处_java萌新,对象的多态有什么好处?

    在学网络的OSI模型时,我们知道了,因为人最适合思考的问题复杂度为3-7,所以OSI才分了七层.而IT做多了,就知道了,随便一个简单系统其复杂度都成百上千,而IT的三个世界,即从现实世界到计算机可运行 ...

最新文章

  1. ABP官方文档翻译 6.1.1 MVC控制器
  2. 排错-Loadrunner录制打不开浏览器解决方法
  3. 【Android 逆向】启动 DEX 字节码中的 Activity 组件 ( 在 PathClassLoader 和 BootClassLoader 之间插入 DexClassLoader )
  4. 如何查看Eclipse版本
  5. 哈,又一款超级简单的队列(MQ)实现方案来了~
  6. Ubuntu下查找命令
  7. bzoj1854 [Scoi2010]游戏——匈牙利算法
  8. K8S部署工具:KubeOperator系统设置
  9. keil uvision2 c语言调试,keil uvision2
  10. 字符串时间格式转化-java Unit
  11. 传感器的定义、构成、分类
  12. python双人贪吃蛇游戏
  13. ADS板级PCIE_SI仿真
  14. 压缩文件解压密码破解之fcrackzip
  15. wiresshark抓包
  16. 彻底解决idea maven依赖报红报错问题
  17. Javaweb google身份宝验证
  18. 阿里云是干什么用的?
  19. 58、【backtrader股票策略】两资产的配对交易策略(pairs trading strategy)
  20. SAP 传输请求的操作步骤

热门文章

  1. linux测试手柄,Linux Joystick 介绍
  2. 企业微信_Windows版本调试
  3. VS Code vue 模板
  4. minio 单机安装、部署 centos7环境
  5. 3行代码实现ftp 上传、下载、删除操作集合
  6. 开发经验分享_01_遇到问题三步走(思路+实战)
  7. idea配置的导入导出
  8. 可视化流程设计器 Activiti Designer
  9. 如何在mysql查询结果集中得到记录行号_获取MySQL查询结果集中记录行号的方法...
  10. findler mac 隐藏文件_Fiddler配合Proxifier抓包PC客户端HTTPS明文数据