迭代器遍历【List、Set、Map】

遍历List方法一:普通for循环


1 for(int i=0;i<list.size();i++){//list为集合的对象名
2 String temp = (String)list.get(i);
3 System.out.println(temp);
4 }

遍历List方法二:增强for循环(使用泛型!)


1 for (String temp : list) {
2 System.out.println(temp);
3 }

遍历List方法三:使用Iterator迭代器(1)


1 for(Iterator iter= list.iterator();iter.hasNext();){

2    String temp = (String)iter.next();

3    System.out.println(temp);

4 }

遍历List方法四:使用Iterator迭代器(2)

 

1 Iterator  iter =list.iterator();

2 while(iter.hasNext()){

3   Object  obj =  iter.next();

4   iter.remove();//如果要遍历时,删除集合中的元素,建议使用这种方式!

5   System.out.println(obj);

6 }

 

遍历Set方法一:增强for循环


1 for(String temp:set){
2 System.out.println(temp);
3 }

遍历Set方法二:使用Iterator迭代器


1 for(Iterator iter = set.iterator();iter.hasNext();){
2 String temp = (String)iter.next();
3 System.out.println(temp);
4 }

遍历Map方法一:根据key获取value

 

1 Map<Integer, Man> maps = new HashMap<Integer, Man>();

2 Set<Integer>  keySet =  maps.keySet();

3 for(Integer id : keySet){

4     System.out.println(maps.get(id).name);

5 }

 

遍历Map方法二:使用entrySet


1 Set<Entry<Integer, Man>>  ss = maps.entrySet();

2 for (Iterator iterator = ss.iterator(); iterator.hasNext();) {

3     Entry e = (Entry) iterator.next();
4     System.out.println(e.getKey()+"--"+e.getValue());
 

Collections工具类 (collection是接口,collections是工具类)
[java.util.Collections 提供了对Set、List、Map进行排序、填充、查找元素的辅助方法]
创建模板进行测试:

 

1 List<String> list = new ArrayList<>();
2 for (int i = 0; i < 4; i++) {
3 list.add(i + "小喜庆");
4 }
5 System.out.println("正常遍历:" + list);  

1. void sort(List) //对List容器内的元素排序,排序的规则是按照升序进行排序。


1 // 递增的方式遍历[自定义类使用comparable接口进行排序]
2 Collections.sort(list);
3 System.out.println("递增遍历:" + list);

2. void shuffle(List) //对List容器内的元素进行随机排列。


1 // 随机排序list中的元素
2 Collections.shuffle(list);
3 System.out.println("随机遍历:" + list);

3. void reverse(List) //对List容器内的元素进行逆续排列 。


1 // 逆序排序
2 Collections.reverse(list);
3 System.out.println("逆序遍历:" + list);

4. int binarySearch(List, Object)//对于顺序的List容器,采用折半查找的方法查找特定对象。


1 // 二分查找法
2 System.out.println(Collections.binarySearch(list, "小云云"));// 没有查到返回一个负值 -5
3 System.out.println(Collections.binarySearch(list, "2小喜庆"));// 查到返回一个对应的下标 2

5.void fill(List, Object) //用一个特定的对象重写整个List容器。


1 //特定的对象重写整个List容器。
2 Collections.fill(list, "Hello");
3 System.out.println(list);

2.java 数组和string 常用的类

1.字符串转数组

String str="1,2,3"; String [] arr=str.split(","); System.out.println(Arrays.toString(arr));

2.数组转字符串

String[] arr = { "0", "1", "2", "3", "4", "5" };
// 遍历
StringBuffer str5 = new StringBuffer();
for (String s : arr) {
str5.append(s);
}
System.out.println(str5.toString()); // 012345

java中String数组和List的互相转化

1.List转String数组

方法一:

//先准备一个List
List<String> testList=new ArrayList<>();
testList.add("a");
testList.add("b");
testList.add("c");
//List转String
String[] strs1=testList.toArray(new String[testList.size()]);
for(String s:strs1){
System.out.println(s);
}

方法二:

//先准备一个List
List<String> testList=new ArrayList<>();
testList.add("a");
testList.add("b");
testList.add("c");
//List转String
String[] strs2 = new String[testList.size()];
for(int i=0;i<testList.size();i++){
strs2[i]=testList.get(i);
}
for(String s:strs2){
System.out.println(s);
}

二:String数据转List

方法一:

//准备一个String数组
String[] strs = {"aa","bb","cc"};
//String数组转List
List<String> strsToList1= Arrays.asList(strs);
for(String s:strsToList1){
System.out.println(s);
}

方法二:

//准备一个String数组
String[] strs = {"aa","bb","cc"};
//String数组转List
List<String> strsToList2=new ArrayList<>();
Collections.addAll(strsToList2,strs);
for(String s:strsToList2){
System.out.println(s);
}

方法三:

//准备一个String数组
String[] strs = {"aa","bb","cc"};
//String数组转List
List<String> strsToList3=new ArrayList<>();
for(String s:strs){
strsToList3.add(s);
}
for(String s:strsToList3){
System.out.println(s);
}

常用写法java的更多相关文章

  1. mongodb java操作常用写法

    MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成.MongoDB 文档类似于 JSON 对象.字段值可以包含其他文档,数组及文档数组.下面介绍的是用java操作 ...

  2. 【Android】按钮点击事件的常用写法

    学习总结: 最近学习了Android点击事件的常用写法.点击事件会触发监听对象身上的回调,常用写法有以下四种: 方法一:使用匿名内部类. public class MainActivity exten ...

  3. MyBatis 常用写法

    MyBatis 常用写法 1.forEach 循环   forEach 元素的属性主要有 item, idnex, collection, open, separator, close. collec ...

  4. 转--Android按钮单击事件的四种常用写法总结

    这篇文章主要介绍了Android按钮单击事件的四种常用写法总结,比较了常见的四种写法的优劣,有不错的参考借鉴价值,需要的朋友可以参考下     很多学习Android程序设计的人都会发现每个人对代码的 ...

  5. 常用的Java转义字符

    1.常用的Java转义字符 \n :  回车       \t : 水平制表符       \r : 换行       \f : 换页       \' : 单引号      \'' : 双引号   ...

  6. 列出JDK中常用的Java包

    列出JDK中常用的Java包 1.java.lang 2.java.sql 3.java.io 4.java.math 5.java.text 6.java.net 7.java.util 8.jav ...

  7. Hibernate常用的Java数据类型映射到mysql和Oracle

    研究了常用的Java基本数据类型在mysql和oracle数据库的映射类型.这里使用的是包装类型做研究,一般在hibernate声明的时候最好不要用基本类型,因为数据库中的null空数据有可能映射为基 ...

  8. jquery常用写法简单记录

    好久不写东西了......话不多说,主要记录一下,最近做的项目中用到的js的记录(虽然特别特别简单) 一 jquery常用写法记录 jQuery(this).addClass("select ...

  9. 常用/常见Java Web 服务器/应用服务器Logo图文介绍

    常用/常见应用服务器介绍:自己总结.整理一些常见的应用服务器,资料主要来源于网上.     常用Java Web 服务器Java Web应用程序需要部署在Java web服务器中运行,常用的Java ...

随机推荐

  1. AI 神经网络理解

    神经网络理解 原文写于2019-12-05,2021-12-08改为markdown

  2. 《操作系统导论》第14章 | 内存操作API

    内存类型 在运行一个C程序的时候,会分配两种类型的内存.第一种称为栈内存,它的申请和释放操作是编译器来隐式管理的,所以有时也称为自动内存.假设需要在func()函数中为一个整形变量x申请空间,我们只需 ...

  3. 了解MySQL存储引擎工作原理

    MySql数据库最大的特色就是其插件式的存储引擎架构,本文主要介绍MySql常用的存储引擎,为开发时选择合适的存储引擎提供参考. 1. MySql体系结构# 在介绍存储引擎之前先来介绍下MySql的体 ...

  4. windows上安装foremost

    做CTF题需要这工具来提取文件里的隐藏文件, 网上大部分是linux版本,之前好不容易找了一个exe文件结果还不能用.找了很长时间终于找到了: https://github.com/raddyfiy/ ...

  5. 自助BI工具:Tableau和Smartbi的对比(上)

    商业智能(BI)和分析平台长期以来一直是商业的重要组成部分,但由于自助BI工具的兴起,在数据科学家和数据库管理员的支持下,分析的责任已经从IT转移到了商业分析师身上. 因此,BI已经从生成月度报告的记 ...

  6. pycharm创建模板

    用pycharm构造作者模板 模板,就是创建一个文件时自动生成模板内容. 这里用pycharm创建作者模板,步骤如下: File-->Settings Editor-->File and ...

  7. 【C#多态】as 类型检测(原理分析) ---用于多态检

    as(OpCodes.Castclass)功能:测试对象引用(O 类型)是否为特定类的实例.相当于:expression is type ? (type)expression : (type)null ...

  8. Spring MVC视图解析器(ViewResolver)

    视图解析器(ViewResolver)是 Spring MVC 的重要组成部分,负责将逻辑视图名解析为具体的视图对象.Spring MVC 提供了很多视图解析类,其中每一项都对应 Java Web 应 ...

  9. 二级python考试大纲以及考试指导复习方案

    二级python考试大纲与复习指导 本人也是在备考二级py 可能理解不对的地方请指正 参考网络,侵权删除 考纲解读→ 一.考试介绍 1.1考试人群 ​ 全国计算机等级考试(python语言程序设计(二 ...

  10. laravel 框架 知识点

    get 方法返回一个包含 Illuminate\Support\Collection 实例的结果,其中每一条记录都是 PHP stdClass 对象的一个实例.你可以通过对象属性的方式来获取每个字段的 ...