增强for循环

1.for循环能做得事情。增强for循环大部分都能做(假设要想获得下标的时候就必须使用简单for循环了)

2.增强for有时候可以方便的处理集合遍历的问题,可是集合的标准遍历是使用迭代器

3.在集合框架中体现出了它的强大之处

Map接口遍历

Map接口的遍历:

1.第一种方法 使用map.values()方法。先把value的值都放在一个Collection集合中。

2.另外一种方法 使用map.entrySet()方法(推荐使用)

3.第三种方法 使用map.keySet()方法

事实上对于Map接口进行遍历操作是非常少的,通常对其都是进行查询操作。

遍历Map接口中的value的三种方法代码操作

System.out.println("=========第一种方法========");

  // 怎样迭代map内容

  // 第一种方法 使用map.values()方法,先把value的值都放在一个Collection集合中。

Collection<Person> collections = map.values();

for (Person person : collections) {

System.out.println(person);

  }

// 另外一种方法 使用map.entrySet()方法(最为推荐的方法)

System.out.println("=========另外一种方法========");

  // Set<Entry<String, Person>> set=map.entrySet();

for (Entry<String, Person> entry : map.entrySet()) {

System.out.println(entry.getValue());

  }

System.out.println("=========第三种方法========");

  // 第三种方法 使用map.keySet()方法

         //Set<String> keySet=map.keySet();

  

  for (String key : map.keySet()) {

   System.out.println(key);

   System.out.println(map.get(key));

  }

可变參数

可变參数(比較简单可是比較有用的小技巧)

可变參数的出现方便了程序的开发

Object...args

String...args

格式为:(数据类型。

。。參数名(能够任意取得))

增强for循环的有一个缺点:失去了下标索引的信息。

自己主动装箱和自己主动拆箱(是针对8个原生数据类型和相应的封装类型)

自己主动装箱:int >>Integer

自己主动拆箱:Integer>>int

<T> 泛型中的T不要使用原生数据类型来定义

可变參数。还是挺实用的一个小功能  type...args,可变參数一定要定义才參数列表中最后一个位置。事实上側面也反应了一个问题:一个方法中最多仅仅能有一个可变參数。

事实上可变參数本质是一个数组

比如:Object...args              实际參数能够这么写:new Object[]{x,y,z}




增强for循环、Map接口遍历、可变參数方法的更多相关文章

  1. c 语言函数可变參数的处理

    /************************************************************************* > File Name: va_list.c ...

  2. OC可变參数的函数实现va_start、va_end、va_list的使用

    一.简单介绍 我们常常在编程的时候看见类似这种代码,如图1.1 图1.1 或者是这种可变參数,如图1.2 图1.2 二.基本知识介绍 在学习怎样写这样的格式的函数前,先简介几个经常使用的宏: 下面摘自 ...

  3. java 可变參数列表

    Java SE5加入了可变參数列表特性 參数能够这样定义.(Object-args).可变參数用"..."来定义,args是可变參数的数组.举个样例: package sample ...

  4. java课堂练习之可变參数与卫条件

    /*  有人邀请A,B,C,D,E,F 6个人參加一项会议,这6个人有些奇怪.由于他们有非常多要求,已知:  1)A,B两人至少有1人參加会议:  2)A,E,F 3人中有2人參加会议.  3)B和C ...

  5. iOS 处理方法中的可变參数

    ## iOS 处理方法中的可变參数 近期写了一个自己定义的对话框的demo,想模仿系统的UIAlertView的实现方式.对处理可变參数的时候,遇到了小问题,于是谷歌了一下.写下了处理问题的方法.记录 ...

  6. Effective JavaScript Item 21 使用apply方法调用函数以传入可变參数列表

    本系列作为Effective JavaScript的读书笔记. 以下是一个拥有可变參数列表的方法的典型样例: average(1, 2, 3); // 2 average(1); // 1 avera ...

  7. C语言利用va_list、va_start、va_end、va_arg宏定义可变參数的函数

    在定义可变參数的函数之前,先来理解一下函数參数的传递原理: 1.函数參数是以栈这样的数据结构来存取的,在函数參数列表中,从右至左依次入栈. 2.參数的内存存放格式:參数的内存地址存放在内存的堆栈段中, ...

  8. java 可变參数

    我们在某些特定的需求环境下,可能要对某一个方法中的參数进行一些操作,并且这些方法中的參数是不规定的,那么问题来了,我们该怎么办呢? java事实上就为我们考虑了这样的情况,那就是使用可变參数 可变參数 ...

  9. java之 ------ 可变參数和卫条件

    可变參数:适用于參数个数不确定.类型确定的情况,java把可变參数当做数组处理. 可变參数必须位于最后一项.当可变參数个数多于一个时,必将有一个不是最后一项,所以仅仅支持有一个可变參数. 可变參数的书 ...

随机推荐

  1. B/S架构和C/S架构

    一.B/S架构 B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件.这种模式统一了客户端,将系统功能实现的核心部分集 ...

  2. centos7 crontab管理

    crontab -l 当前用户的任务 crontab -e 编辑任务列表 crontab -r 删除当前用户的任务

  3. UGUI的优点新UI系统三效率高效果好

    UGUI的优点新UI系统三效率高效果好 通过对批处理(batching).纹理图集(texture atlasing)和新的canvas组件的支持,新UI系统提供了一个经过优化的解决方案,使得开发者添 ...

  4. Heavy Transportation(POJ - 1797 变形版 dijkstra)

    Background Hugo Heavy is happy. After the breakdown of the Cargolifter project he can now expand bus ...

  5. 【数论】【枚举】【莫比乌斯反演】【线性筛】bzoj2818 Gcd

    思路是hdu6134的简化版,只需要在外面套上一个枚举素数就行了. http://www.cnblogs.com/autsky-jadek/p/7491730.html #include<cst ...

  6. c99柔性数组

    变长结构体 struct test { int nSize; char data[]; // 或者 char data[0];但建议使用 char data[]; 注意:c98 时不支持柔性数组,其仅 ...

  7. django, form.errors处理

    from.errors其实就是一个字典, 可以利用for error in form.errors.values, 或者for key,  value in form.errors遍历得到其中的数据

  8. 搭建maven支持的web工程的步骤

    搭建一个新的web project的整体思路:先用maven搭建项目的骨架,生成mvn project,然后将mvn project转换为web project,最后添加相关的Spring,hiber ...

  9. 移动应用安全开发指南(Android)--Android组件和IPC

    概述 移动应用开发中,往往有跨进程通信的需求,方便地实现程序间的数据共享.Android提供了多种IPC通信的方式,给开发人员带来了便利,但如果选择或使用不当,就有可能发生各种各样的风险. 安全准则 ...

  10. Word中将图表变为表格

    一定要先拷贝了图表,否则第二张图片没那个像是,只有最后一个,这样的做的目的是减少查重. 还有就是把部分文字放入Mathtype,查不出来.