Java集合初体验
背景:
一、数组array和集合的区别:
(1)数组是大小固定的,并且同一个数组只能存放类型一样的数据(基本类型/引用类型)
二、集合的体系结构:
三、各个接口实现类的插入和遍历数据的方法
package com.test.List;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class ListTest {
public static void main(String[] args) {
List list=new ArrayList<>();
list.add(0, "a");
list.add(1, "b");
list.add(2, "c");
list.add(3, "d");
// Iterator iterator =list.iterator();
// while (iterator.hasNext()) {
// System.out.println(iterator.next());
// }
for (Object object : list) {
System.out.println(object);
}
}
}
package com.test.List;
import java.util.HashSet;
public class SetTest {
public static void main(String[] args) {
// TODO 自动生成的方法存根
HashSet<String> hSet=new HashSet<>();
hSet.add("你好");
hSet.add("我在学集合");
hSet.add("哦,学的怎么样了");
hSet.add("听难的");
hSet.add("没事,加油");
hSet.add("恩,好的,谢谢");
for (String string : hSet) {
System.out.println(string);
}
}
}
package com.test.List;
import java.util.Iterator;
import java.util.Set;
import java.util.TreeMap;
public class User {
private int id;
private String name;
private String address;
public User(int id,String name,String address) {
this.id=id;
this.name=name;
this.address=address;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public static void main(String[] args) {
TreeMap<Integer, User> map=new TreeMap<Integer,User>();
map.put(1, new User(1,"小红","北京"));
map.put(2, new User(2,"小蓝","广州"));
map.put(3, new User(4,"小东","深圳"));
map.put(4, new User(5,"小白","上海"));
//返回此映射所包含的键的视图
Set<Integer> keySet=map.keySet();
/*Iterator<Integer> i=keySet.iterator();
while (i.hasNext()) {
System.out.println(map.get(i.next()));
}*/
//foreach是迭代器的简便写法
for (Integer integer : keySet) {
User user=map.get(integer);
System.out.println(user.getId()+";"+user.getName()+";"+user.getAddress());
}
}
}
总结:
Java集合初体验的更多相关文章
- JAVA 11初体验
JAVA 11初体验 随着JAVA没半年发布一次新版本,前几天JAVA 11隆重登场.在JAVA 11中,增加了一些新的特性和api, 同时也删除了一些特性和api,还有一些性能和垃圾回收的改进. 作 ...
- JAVA多线程-初体验
一.线程和进程 每个正在系统上运行的程序都是一个进程.每个进程包含一到多个线程. 进程是所有线程的集合,每一个线程是进程中的一条执行路径. 二.为什么使用多线程,哪些场景下使用 多线程的好处是提高程序 ...
- Java爬虫初体验
年关将近,工作上该完成的都差不多了,上午闲着就接触学习了一下爬虫,抽空还把正则表达式复习了,Java的Regex和JS上还是有区别的,JS上的"\w"Java得写成"\\ ...
- java学习初体验之课后习题
import java.util.Scanner; public class HelloWorld { public static void main(String[] args) { //打印Hel ...
- Java单元测试初体验(JUnit4)
什么是单元测试 我们在编写大型程序的时候,需要写成千上万个方法或函数,这些函数的功能可能很强大,但我们在程序中只用到该函数的一小部分功能,并且经过调试可以确定,这一小部分功能是正确的.但是,我们同时应 ...
- java activemq初体验
1.下载安装ActiveMQ ActiveMQ官网下载地址:http://activemq.apache.org/download.html ActiveMQ 提供了Windows 和Linux.Un ...
- java学习初体验NO.1
一.学习目标: 1.理解Java编译原理 在Java编程语言中,所以源代码首先以用.Java扩展名结尾的纯文本件编写,然后,编译器将这些源文件编译成.Class文件.然后,Java启动器工具使用Jav ...
- java程序初体验
示例代码 class Demo { public static void main(String[] args) { System.out.print("hello world") ...
- JAVA的初体验
jdk的地址:https://www.oracle.com/technetwork/java/javase/downloads/index.html 第一步:找到相应的JAVA SE版本,点击down ...
随机推荐
- 数据结构之树(Tree)(一) :树
ps:好久没用动手写blog了,要在这条路上不断发展,就需要不停的学习,不停的思考与总结,当把写blog作为一种习惯,就是自我成长的证明,Fighting!. 一.简介 树是一种重要的非线性数据结构, ...
- NHibernate总结
NHibernate总结 现在的项目中数据访问使用的是NHibernate的一个ORM框架,小弟也是在后期加入项目组,之前对NHibernate就一直没有接触过,所以一直在学习NHibernate,都 ...
- Google论文之三----MapReduce
Google论文之三----MapReduce MapReduce:大型集群上的简单数据处理 摘要 MapReduce是一个设计模型,也是一个处理和产生海量数据的一个相关实现.用户指定一个用于处理一个 ...
- Machine Learning/Random Projection
这次突然打算写点dimension reduction的东西, 虽然可以从PCA, manifold learning之类的东西开始, 但很难用那些东西说出好玩的东西. 这次选择的是一个不太出名但很有 ...
- 把虚拟机中的Linux系统安装到U盘中
[小技巧] 把虚拟机中的Linux系统安装到U盘中 出于各种需求,很多用户可能经常会在Windows系统中安装虚拟机,然后在虚拟机中安装Linux系统.使用虚拟机的优点是可以同时使用多个系统,而缺点也 ...
- 偏执的我从Linux到Windows的感受
可能很多人知道一个比我还偏执的技术狂人,也就是当年被知乎很多谈论的王垠. 他曾经写过好几篇轰动一时的文章,比如<完全用linux工作>.此文也影响了一批人拥抱Linux.不过不久之后他又写 ...
- headfirst设计模式(1)—策略模式
什么是策略模式 策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换.策略模式让算法独立于使用它的客户而独立变化(摘自百度百科) 关键字:算法封装,相互替换,独立变化 算法封装 ...
- Dell-R730 【Pxe+dhcp+ftp+tftp+Kickstart+CentOs6.6】
IP:10.104.0.101 [root@localhost network-scripts]# cat ifcfg-em1 [root@localhost network-scripts]# ip ...
- hdu1046
#include<iostream> #include<cmath> using namespace std; int main() { int T,t=0,m,n; cin& ...
- CMD杀进程 例如:杀8080端口的进程
首先:端口被占用的报错形式如下 说明8080端口被占用 解决方案一:查找pid,根据pid去任务管理器的进程中结束占用8080端口号的进程 1.首先按快捷键windows+R,在运行框里输入cmd,如 ...