java集合框架复习----(1)
1 、集合框架思维导图

一、什么是集合
存放在java.util.*。是一个存放对象的容器。
- 存放的是对象的引用,不是对象本身
- 长度不固定
- 只能存放对象
二、collection接口

collection的使用
- 增加元素 add();
- 判断是否包含某个元素 contains();
- 删除某个元素 remove();
- 遍历元素(iterator迭代器)
package com.zheng.demo1;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
public class MyCollection {
public static void main(String[] args) {
Collection c = new ArrayList();
//增加元素
c.add("足球");
c.add("篮球球");
c.add("乒乓球");
//集合大小
System.out.println("当前集合大小:" + c.size());
//判断是否包含某个元素
System.out.println(c.contains("足球"));
//删除元素
c.remove("足球");
System.out.println("删除一个元素之后大小:" + c.size());
System.out.println("===============");
//打印,增强for循环
for (Object obj : c) {
System.out.println("增强for循环取值:"+obj);
}
System.out.println("==============");
//迭代器形式
Iterator it = c.iterator();
while (it.hasNext()){//判断有无下一个元素
Object obj=it.next();//取值
System.out.println("iterator取值:"+obj);
}
}
}

Iterator:迭代器
- hasNext(); 查看是否有下一个元素。有为true,无为false
- next(); 取出下一个元素的值
- remove(); 删除当前元素
在JAVA中,所有的对象都有toString方法;方便打印
通过添加一个对象到collection集合中
实体类
package com.zheng.demo1;
public class Student {
private int id;
private String name;
private String address;
public Student() {
}
public Student(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;
}
@Override
public String toString() {
return "Student{" +
"id=" + id +
", name='" + name + '\'' +
", address='" + address + '\'' +
'}';
}
}
加入到集合
package com.zheng.demo1;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
public class MyCollection1 {
public static void main(String[] args) {
//创建容器
Collection<Student> students = new ArrayList<Student>();
//创建对象
Student student1 = new Student(1, "小明", "北京");
Student student2 = new Student(2, "小红", "河南");
Student student3 = new Student(3, "小黑", "深圳");
Student student4 = new Student(4, "小蓝", "上海");
//添加对象到容器中
students.add(student1);
students.add(student2);
students.add(student3);
students.add(student4);
//查看
System.out.println(students.toString());
System.out.println("=========增强for循环输出=========");
//增强for循环输出
for (Student student : students) {
System.out.println(student.toString());
}
System.out.println("=========迭代器输出=========");
//迭代器输出
Iterator<Student> iterator = students.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
}
}

java集合框架复习----(1)的更多相关文章
- java集合框架复习(一)
数组类Array是java中最基本的一个存储结构,它用于存储 一组连续的对象或一组类型相同的基本类型的数据. Array特点:效率高,但容量固定且无法动态改变, 缺点:无法判断其中存有多少元素,len ...
- java集合框架复习
数组类Array是java中最基本的一个存储结构,它用于存储 一组连续的对象或一组类型相同的基本类型的数据. Array特点:效率高,但容量固定且无法动态改变, 缺点:无法判断其中存有多少元素,len ...
- java集合框架复习----(3)Set
文章目录 四.set集合 1.hashSet[重点] 2.TreeSet 四.set集合 无序.无下标.元素不可重复 1.hashSet[重点] == 数组+链表+红黑树== 基于hashcode计算 ...
- java集合框架复习----(4)Map、List、set
文章目录 五.Map集合[重要] 1.hashMap 六.Collections工具类 总结 集合的概念 List集合 set集合: Map集合 Collection 五.Map集合[重要] 特点: ...
- java集合框架复习----(2)List
文章目录 三.List集合 listIterator:迭代器 List实现类 1.泛型类 2.泛型接口 三.List集合 特点 有序,打印输出的顺序和添加时的顺序一致(不会帮你自动排序) 有下标,可以 ...
- 【java集合框架源码剖析系列】java源码剖析之java集合中的折半插入排序算法
注:关于排序算法,博主写过[数据结构排序算法系列]数据结构八大排序算法,基本上把所有的排序算法都详细的讲解过,而之所以单独将java集合中的排序算法拿出来讲解,是因为在阿里巴巴内推面试的时候面试官问过 ...
- Java集合框架List,Map,Set等全面介绍
Java集合框架的基本接口/类层次结构: java.util.Collection [I]+--java.util.List [I] +--java.util.ArrayList [C] +- ...
- Java集合框架练习-计算表达式的值
最近在看<算法>这本书,正好看到一个计算表达式的问题,于是就打算写一下,也正好熟悉一下Java集合框架的使用,大致测试了一下,没啥问题. import java.util.*; /* * ...
- 【集合框架】Java集合框架综述
一.前言 现笔者打算做关于Java集合框架的教程,具体是打算分析Java源码,因为平时在写程序的过程中用Java集合特别频繁,但是对于里面一些具体的原理还没有进行很好的梳理,所以拟从源码的角度去熟悉梳 ...
随机推荐
- 6. MGR状态监控 | 深入浅出MGR
GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 目录 1. 节点状态监控 2. MGR事务状态监控 3. 其他监控 4. 小结 参考资料.文档 免责声明 文章推荐: 关于 ...
- 技术分享 | 简单测试MySQL 8.0.26 vs GreatSQL 8.0.25的MGR稳定性表现
欢迎来到 GreatSQL社区分享的MySQL技术文章,如有疑问或想学习的内容,可以在下方评论区留言,看到后会进行解答 GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. M ...
- Spring的简单使用(3)
一:SM框架的整合: 所需要的依赖: <dependency> <groupId>junit</groupId> <artifactId>junit&l ...
- ajax初识
Ajax 全称为:"Asynchronous JavaScript and XML"(异步 JavaScript 和 XML) 它并不是 JavaScript 的一种单一技术,而是 ...
- 使用JMeter测试.Net5.0,.Net6.0框架下无数据处理的并发情况
1. 安装JMeter及使用 1.1下载JMeter 登录官方网站找到下载链接进行下载:https://jmeter.apache.org/download_jmeter.cgi 1.2配置环境变 ...
- P5384[Cnoi2019]雪松果树 (长链剖分)
题面 一棵以 1 1 1 为根的 N N N 个节点的有根树, Q Q Q 次询问,每次问一个点 u u u 的 k k k 级兄弟有多少个(第 k k k 代祖先的第 k k k 代孩子),如果没有 ...
- HTML+JS+CSS 实现随机跳转到一个网址
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta http ...
- dotnet 设计规范 · 抽象类
X 不要定义 public 或 protected internal 访问的构造函数.默认 C# 语言不提供抽象类的公开构造函数方法. 如果一个构造函数定义为公开,只有在开发者需要创建这个类的实例的时 ...
- Windows平台RTMP/RTSP播放器实现实时音量调节
为什么要做实时音量调节 RTMP或RTSP直播播放音量调节,主要用于多实例(多窗口)播放场景下,比如同时播放4路RTMP或RTSP流,如果音频全部打开,几路audio同时打开,可能会影响用户体验,我们 ...
- 经纬度转换为距离单位km的方法
function rad(d){ return d * Math.PI /180.0; }; GetDistance(lat1, lng1, lat2, lng2){ var radLat1 =rad ...