JAVA中集合转数组遍历
JAVA中集合的遍历的一种方法时集合转数组遍历,也是就调用Collection中的toArray().
代码:
public static void main(String[] args) {
// TODO Auto-generated method stub
Collection c=new ArrayList();
c.add(new Student("kj",12));
c.add(new Student("uj",13));
c.add(new Student("tj",15));
c.add(new Student("cj",14));
Object[]ob= c.toArray();//将集合转换为数组
for(int i=0;i<ob.length;i++){
Student s=(Student)ob[i];
System.out.println(s.getName()+"..."+s.getAge());
}
}
运行结果:
kj...12
uj...13
tj...15
cj...14
需要注意的是集合转数组进行遍历的时候调用toArray()方法,需要声明一个Object类的数组对象。当集合所装的类型为对象时,不能直接通过调用对象类的方法拿到对象参数,因为就算存储的是Student对象,已近提升成为了Object。多态的弊端就是,不能使用子类的属性和方法。如果想使用子类的属性和方法,就需要对ob这个Oject数组进行转级,也就是,类型强转。 Student s=(Student)ob[i]。这样做的好处是,我可以遍历Student的所有元素,并对它进行操作。
JAVA中集合转数组遍历的更多相关文章
- java 中集合和数组互相转换
package test; import java.util.Arrays;import java.util.List; /** * Created by Administrator on 2016/ ...
- java中集合,数组,字符串相互转换
数组转List String[] staffs = new String[]{"Tom", "Bob", "Jane"}; List sta ...
- Java中forEach, 用来遍历数组
这里的for是Java中forEach, 用来遍历数组的.for(int i : d) 就是遍历int型数组d的 每一次访问数组d的时候读取的数据放入int型的i中.和for(int i=0;i< ...
- Java中集合的概述
一.集合和数组的区别 1.数组(可以存储基本数据类型)是用来存现对象的一种容器,但是数组的长度固定,不适合在对象数量未知的情况下使用. 2.集合(只能存储对象,对象类型可以不一样)的长度可变,可在多数 ...
- java中集合Collection转list对象
参考:java中集合Collection转list对象 首先我的需求是获取到购物车列表,购物车列表是一个Map对象,构造方法获取购物项,这里购物项是Collection对象 // 购物项集合,K商品I ...
- 在Java中怎样把数组转换为ArrayList?
翻译自:How to Convert Array to ArrayList in Java? 本文分析了Stack Overflow上最热门的的一个问题的答案,提问者获得了很多声望点,使得他得到了在S ...
- Java中集合List,Map和Set的区别
Java中集合List,Map和Set的区别 1.List和Set的父接口是Collection,而Map不是 2.List中的元素是有序的,可以重复的 3.Map是Key-Value映射关系,且Ke ...
- Java中list如何利用遍历进行删除操作
转: Java中list如何利用遍历进行删除操作 2018年03月31日 10:23:41 Little White_007 阅读数:3874 Java三种遍历如何进行list的便利删除: 1.f ...
- Java中集合List,Map和Set的差别
Java中集合List,Map和Set的差别 1.List和Set的父接口是Collection.而Map不是 2.List中的元素是有序的,能够反复的 3.Map是Key-Value映射关系,且Ke ...
随机推荐
- 【DUBBO】dubbo的Cluster接口
Directory中的多个Invoker伪装成一个Invoker, 对上层透明,包含集群的容错机制 Cluster可以看做是工厂类, 将目录directory下的invoker合并成一个统一的Invo ...
- liunx系统环境下,爆出该错误"org.eclipse.wst.validation" has been removed解决办法
导出maven工程遇到的问题,"org.eclipse.wst.validation" has been removed,还以为是工程本身的问题,后来发现是eclipse的问题. ...
- python 之 list,tuple,dict,set
基本类型, 其中set好像提到的很少 list : [] 根据字面, 是一个列表, 所以有序, 可以通过序号方位 tuple: () 是不变的list, 通过序号访问 dict: {}, 字 ...
- cockpit 使用(集成docker && k8s 管理)
1. yum 安装 sudo yum install cockpit 2. 允许启动 sudo systemctl enable --now cockpit.socket 3. 可选的插件 cockp ...
- 【Oracle】OGG单向复制配置
实验环境: 源端: Ip:192.168.40.10 DataBase:Oracle 11.2.0.1.0 ORCL OS:OEL5.6 OGG:fbo_ggs_Linux_x86_ora11g_32 ...
- js各种效果
1.JavaScript 仿LightBox内容显示效果 2.固定高度的div,竖直方向出现滚动条,水平方向固定 http://www.jb51.net/css/109928.html <!do ...
- redis+php实现微博功能(二)
数据结构: set post:postid:3:time timestampset post:postid:3:userid 5 set post:postid:3:content 测试发布哈哈哈哈 ...
- 理解加密算法——创建CA机构,签发证书并开始TLS通信
1 不安全的TCP通信 普通的TCP通信数据是明文传输的,所以存在数据泄露和被篡改的风险,我们可以写一段测试代码试验一下,NODE.JS代码: TCP Server: const net=requir ...
- 【STL源码学习】std::list类的类型别名分析
有了点模板元编程的traits基础,看STL源码清晰多了,以前看源码的时候总被各种各样的typedef给折腾得看不下去, 将<list>头文件的类继承结构简化如下 #include < ...
- StreamTool
public class StreamTool { //从流中读取数据 public static byte[] read(InputStream inStream) throws Exception ...