一、定义
变量:用来存储 单个数据
数组:用来存储 多个 同类型数据
长度确定不可更改 length()
集合:用来存储 多个数据
长度不确定 size()
二、接口
- List接口
特点:元素有序,有下标,可以重复
实现类:Arraylist
- Set接口
特点:元素无序,无下标,唯一性
实现类:HashSet
下标从 0开始
方法:[1] 添加元素 add();
[2] 获取元素
[3] 删除元素 remove();
--1. 根据 值 删除对象,第一次出现的对象
--2.根据元素 下标 删除对象
遍历集合(两种形式)
1、for循环
2、foreach循环
for(数据类型 对象名:集合名){
}
三、泛型:<E>
用来约束集合中的元素类型,即数据类型
四、案例
package com.zking.jihe;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
/**
* 变量:用来存储 单个数据
* 数组:用来存储 多个 同类型数据
* 长度确定不可更改 length()
* 集合:用来存储 多个数据
* 长度不确定 size()
* @author Administrator
*
*/
public class ListTest {
public static void main(String[] args) {
/*
* List接口
* 特点:元素有序,有下标,可以重复
* 实现类:Arraylist
* 方法:添加元素
* 获取元素
* 删除元素
*
* 遍历集合(两种形式)
* 1、for循环
* 2、foreach循环
* for(数据类型 对象名:集合名){
* }
*
* 泛型:<E>
* 用来约束集合中的元素类型,即数据类型
*/
//实例化一个 集合对象
ArrayList l = new ArrayList();
//给集合添加元素
l.add("鹿");
l.add("饭饭");
l.add("迷迷");
l.add("ting");
l.add(true);//为 Object类,可以添加任意值
//插入元素
l.add(1, "樂");//在下标1的位置插入元素,其他元素依次后挪
//查看集合元素个数(长度)
System.out.println(l.size());
//获取指定元素(下标从0开始)
Object o = l.get(0);//获取第一个元素
System.out.println(o);
// or
System.out.println(l.get(2));//获取第三个元素
//遍历集合查看所有元素
System.out.println("------for--------");
for(int i = 0; i<l.size(); i++) {
System.out.print(l.get(i)+" ");
}
System.out.println("\n");
System.out.println("------foreach------");
for(Object ob:l) {
System.out.print(ob+" ");
}
/*
* Set接口
* 特点:元素无序,无下标,唯一性
* 实现类:HashSet
*/
System.out.println("\n");
//创建一个 HashSet集合
HashSet hs = new HashSet();
//添加元素
hs.add("one");
hs.add("two");
hs.add("three");
hs.add("go1");
hs.add("go2");
hs.add("go3");
//集合元素个数
System.out.println(hs.size());
System.out.println("-----遍历集合-------");
//遍历集合
for(Object obj:hs) {
System.out.print(obj+" ");
}
System.out.println("\n-----删除元素-------");
hs.remove("go1");//根据 对象删除对象,第一次出现的对象
for(Object ojb:hs) {
System.out.print(ojb+" ");
}
System.out.println("\n------泛型-------");
//创建一个 List集合,要求只能添加字符串元素
List<Object> list = new ArrayList<Object>();
list.add(11);
list.add(22);
for(Object job:list) {
System.out.print(job+" ");
}
System.out.println("\n-----删除元素-----");
list.remove(0);
for(Object job:list) {
System.out.print(job+" ");
}
//写一个类,数据类型未知
ArrayList<Nosure<Object>> wz = new ArrayList<Nosure<Object>>();
//这里可以直接定义一个数据类型
}
}
package com.zking.jihe;
public class Nosure <X>{
X name;//定义未知数据类型
}