Java当中的for语句是可以进行简化的,但是简化有一定的条件:

简化后的写法:  for(数据类型  表示符 : 表达式){....}

根据"表达式"类型,总共就有两种类型的表达式有for语句的简化写法

① 当"表达式"类型有 public Interator interator()方法

也就是说"表达式"类型有迭代器

实例:Vector vs = new Vector();

vs.add("a") ;

vs.add("b") ;

vs.add("c") ;

for(String c : vs)

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

//输出 : a  b  c

②当"表达式"类型是数组对象的引用变量时,可以用简化的for语句

实例1: int [] a = {1,2,3};

for(int c : a){System.out.printn(c+" ");}

//输出 1 2 3

实例2: enum E_SEASON{ 春天,夏天,秋天,冬天 }

for(E_SEASON c : E_SEASON.values()){System.out.println(c+",");}

//输出: 春天,夏天,秋天,冬天

很明显由于E_SEASON.values()返回一个元素为E_SEASON数据类型的数组,那么就可以使用简化的

for语句

③但是有一点要非常注意,使用for的简化语句时,只能够用于访问容器或数组中的元素,而不能够将其中   的元素改变;

如:  int [ ] a = {1,2,3};

for( int s : a)                     s = 5 ;     //这是不允许的

java中for循环的简化_Java中for语句的简化写法相关推荐

  1. java中无限循环的方法_Java中的无限循环

    Java中的无限循环 在Java中查看下面的无限while循环. 它会导致它下面的语句编译时错误. while(true) { System.out.println("inside whil ...

  2. java for循环返回值_Java中的for循环——通过示例学习Java编程(9)

    作者:CHAITANYA SINGH 来源:https://www.koofun.com/pro/kfpostsdetail?kfpostsid=21 循环用于反复执行同一组语句,直到满足特定条件为止 ...

  3. java中的case1怎么说_Java 中的 CAS 简述及原理解析

    一.CAS 是什么? CAS(Compare And Swap),比较并交换,它是一条CPU并发原语.它的功能是判断内存某个位置的值是否为预期值,如果是则更新为新的值,这个过程是原子的.1 publi ...

  4. java 内存溢出和内存泄漏_JAVA中的内存溢出和内存泄漏有很大的区别

    JAVA中的内存溢出和内存泄漏分别是什么,有什么联系和区别,我谈谈自己的理解. 内存泄漏(memory leak ):申请了内存不释放,比如100m的内存,分配了10m的内存一直不回收,那么可以用的内 ...

  5. java中为什么要用注解_java中的注解,真的很重要,你理解了嘛?

    这篇文章开始讲解java中的注解,在平时的开发当中我相信你或多或少的接触过注解.比如你可能都见过@override,它代表的就是一个注解.但是,为了更加清晰的去介绍注解,我还是先给出一个例子,让你能够 ...

  6. java中map如何实现遍历_Java中如何遍历Map对象的4种方法

    在Java中如何遍历Map对象 How to Iterate Over a Map in Java 在java中遍历Map有不少的方法.我们看一下最常用的方法及其优缺点. 既然java中的所有map都 ...

  7. java里break的使用方法_Java中break的第三种用法说明

    在Java中,break语句有三种用法,第一种是用于终止switch语句中的语句序列,第二种是用于退出循环,然而第三种是用作goto语句的"文明"形式! 我们知道,goto语句会破 ...

  8. java 二维数组的筛选_java中的筛选遍历数组,实例展示

    java中关于数组的知识点也是十分丰富的,上次已经为大家介绍过java中的二维数组排序是怎样的主要内容,今天再为大家介绍一些与数组相关的其他内容,也就是java中的筛选遍历数组,一起来看看吧. 一.$ ...

  9. java堆和栈的区别_JAVA中堆和栈的区别

    在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配. 当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配 ...

最新文章

  1. vim中开shell
  2. 资源隔离之 Linux namespace
  3. linux下su和sudo的区别 (/libtool: arm-linux-gcc command not found )
  4. OptionRoom将在Bounce授权拍卖平台进行Polkadot IDO
  5. 2017年5月24日 HTML 基础知识(二)
  6. 老板:kill -9 的原理都不知道就敢在线上执行?
  7. NUC1937 B.函数【水题】
  8. 【职业】大一规划、体验生活、故事里
  9. [20171113]修改表结构删除列相关问题2.txt
  10. IOS: iPhone键盘通知与键盘定制
  11. Axure RP 9基础教程(3)——添加图标元件
  12. C语言实现三子棋(代码详解)
  13. QT 界面_滑屏窗口管理器(功能)
  14. 良心安利秋分海报设计模板素材
  15. python pyinstaller 打包exe文件,(附带图片 + 自己、别人电脑上均可以运行)
  16. idea修改批量替换快捷键_idea当配置eclipse快捷键时,全局替换的快捷键是什么?...
  17. 五款入侵检测工具介绍
  18. 测试基础理论-问题级别定义
  19. 网站订餐外卖与手机订餐的发展分析
  20. linux桌面搜索工具,Linux_Ubuntu安装桌面搜索工具Beagle,Beagle 是一个强大的桌面搜索工 - phpStudy...

热门文章

  1. WSUS专题之二:部署与规划-参数选择
  2. C#用mouse_event模拟鼠标点击的问题
  3. java Map及Map.Entry详解
  4. 淘宝应对双11的技术架构分析
  5. 深入php-fpm的两种进程管理模式详解
  6. Elasticsearch索引迁移的三种方式
  7. Kafka 入门 and kafka+logstash 实战应用
  8. Git的fatal: Not a git repository (or any parent up to mount point /home)
  9. ThinkPHP5有关模型hasOne、hasMany、belongsTo详解
  10. oracle undo 缩小,缩小Oracle的系统表空间(SYSTEM、TEMP、UNDOTBS1、SYSAUX)