Java基础——collection接口
int [] x=new int[5]; //声明一个数组,长度为5,每个元素都是 int型
Student [] list=new Student[5]; //声明一个数组,长度为5,每个元素都是 Student 型

import java.util.ArrayList;
import java.util.Collection; public class CollT {
public static void main(String[] args) { Collection<String> a = new ArrayList<String>();
Collection<String> c = new ArrayList<String>();
Collection<String> d = new ArrayList<String>();
Collection<String> e = new ArrayList<String>();
Collection<String> f = new ArrayList<String>(); // Integer中的i要大写
ArrayList<Integer> h = new ArrayList<Integer>();// h和g做比较 h.add(4);
h.add(33);
h.add(66);
h.add(77);
h.add(345);
h.add(44);
// h.add("aaa");—报错
// h.add(ff);—报错 // Object[] g={"aaa",4,33,66,ff,77,88,345,44,"dd","cfc"}; a.add("白");
a.add("日");
a.add("依");
a.add("山");
a.add("尽"); c.add("黃");
c.add("河"); d.add("白");
d.add("日");
d.add("依");
d.add("山");
d.add("尽"); e.add("山");
e.add("尽"); f.add("5");
// f.add(6); Object[] g = { "aaa", 4, 33, 66, 77, 88, 345, 44, "dd", "cfc" }; System.out.println(a.isEmpty());
System.out.println(a.add("白"));
System.out.println(a.addAll(c));
System.out.println(a); System.out.println(a.contains("地"));
System.out.println(a.containsAll(c));// true
System.out.println(a.equals(c));
System.out.println(c); a.clear();
System.out.println(a);
System.out.println(a.containsAll(d)); d.remove("白");
System.out.println(d);
d.remove("wang");// 没有反应
System.out.println(d); System.out.println(a.hashCode());// a此时已经被晴空了
// 第一次时,我竟然是这么写的:a.hashCode();
System.out.println(c.hashCode());
System.out.println(d.hashCode()); a.add("浪花滚滚");
System.out.println(a); System.out.println(e.removeAll(d));
System.out.println(d.removeAll(e));
System.out.println(d);
System.out.println(e);
System.out.println(e.size());
// 我之前写成e.size();
System.out.println(d.size()); System.out.println(a.toArray());// 哈哈哈注意
System.out.println(f.toArray());// 哈哈哈注意 System.out.println("=========分割线========="); // System.out.println(g);
for (int i = 0; i < g.length; i++)
System.out.println(g); System.out.println("**********分割线*********"); // 获取数组
Integer[] array = h.toArray(new Integer[h.size()]);
// 遍历数组
/**
* for(int i=0;i<h.length;i++){ System.out.println(h[i]+""); length
* 报错:cannot be resolved or is not a field
*/
for (int element : array) {
System.out.println(element);// 和下面的一起打印,结果竟然!!! System.out.print(element + "\t");// 复习一下而已 } } }
Output:
//上面示例的打印结果!!
false
true
true
[白, 日, 依, 山, 尽, 白, 黃, 河]
false
true
false
[黃, 河]
[]
false
[日, 依, 山, 尽]
[日, 依, 山, 尽]
1
1288721
798365125
[浪花滚滚]
true
false
[日, 依, 山, 尽]
[]
0
4
[Ljava.lang.Object;@16925b0
[Ljava.lang.Object;@297ffb
=========分割线=========
[Ljava.lang.Object;@914f6a
[Ljava.lang.Object;@914f6a
[Ljava.lang.Object;@914f6a
[Ljava.lang.Object;@914f6a
[Ljava.lang.Object;@914f6a
[Ljava.lang.Object;@914f6a
[Ljava.lang.Object;@914f6a
[Ljava.lang.Object;@914f6a
[Ljava.lang.Object;@914f6a
[Ljava.lang.Object;@914f6a
**********分割线*********
4
4 33
33 66
66 77
77 345
345 44
44
Collection常用方法小总结:
boolean add(E e) //注意它的参数类型
boolean addAll(Collection<? extends E> c) 将指定 collection 中的所有元素都添加到此 collection 中
boolean remove(Object o)
boolean contains(Object o) //判断集合中指定的元素是否存在
boolean containsAll()// 如果此 collection 包含指定 collection 中的所有元素,则返回 true。
boolean removeAll(Collection<?> c)
boolean retainAll(Collection<?> c) 仅保留此 collection 中那些也包含在指定 collection 的元素(可选操作)(取交集)
clear()
size()
toArray()
boolean isEmpty()
Iterator<E> iterator() 返回在此 collection 的元素上进行迭代的迭代器。
代码实例(关注比较结果)
例一:(主要对比1.有无注释掉的内容;2.true和false和打印位置;3思考执行顺序和字符串类型的比较)
import java.util.ArrayList;
import java.util.Collection; public class CollT {
public static void main(String[] args) { Collection<String> a = new ArrayList<String>();
Collection<String> b = new ArrayList<String>(); a.add("白");
a.add("日");
a.add("依");
a.add("山");
a.add("尽"); a.remove("4"); b.add("白");
b.add("日");
b.add("依");
b.add("山");
b.add("尽"); System.out.println(b.equals(a)); System.out.println(a);
System.out.println(b); System.out.println(a.hashCode());
System.out.println(b.hashCode()); System.out.println(a.removeAll(b)); System.out.println(a);
System.out.println("==================="); Object[] c = a.toArray();
String s = null;
for (int i = 0; i < c.length; i++) {
s = (String) c[i];
System.out.println(s);
} }
}

例二:
import java.util.ArrayList;
import java.util.Collection; public class CollT {
public static void main(String[] args) { Collection<String> a = new ArrayList<String>();
Collection<String> b = new ArrayList<String>(); a.add("白");
a.add("日");
a.add("依");
a.add("山");
a.add("尽"); //a.remove("4"); b.add("白");
b.add("日");
b.add("依");
b.add("山");
b.add("尽"); System.out.println(b.equals(a)); System.out.println(a);
System.out.println(b); System.out.println(a.hashCode());
System.out.println(b.hashCode()); //System.out.println(a.removeAll(b)); System.out.println(a);
System.out.println("==================="); Object[] c = a.toArray();
String s = null;
for (int i = 0; i < c.length; i++) {
s = (String) c[i];
System.out.println(s);
} }
}

例三:
import java.util.ArrayList;
import java.util.Collection; public class CollT {
public static void main(String[] args) { Collection<String> a = new ArrayList<String>();
Collection<String> b = new ArrayList<String>(); a.add("白");
a.add("日");
a.add("依");
a.add("山");
a.add("尽"); a.remove("4"); b.add("黃");
b.add("河");
b.add("入");
b.add("海");
b.add("流"); System.out.println(b.equals(a)); System.out.println(a);
System.out.println(b); System.out.println(a.hashCode());
System.out.println(b.hashCode()); System.out.println(a.removeAll(b)); System.out.println(a);
System.out.println("==================="); Object[] c = a.toArray();
String s = null;
for (int i = 0; i < c.length; i++) {
s = (String) c[i];
System.out.println(s);
} }
}

例四:
import java.util.ArrayList;
import java.util.Collection; public class CollT {
public static void main(String[] args) { Collection<String> a = new ArrayList<String>();
Collection<String> b = new ArrayList<String>(); a.add("白");
a.add("日");
a.add("依");
a.add("山");
a.add("尽"); //a.remove("4"); b.add("黃");
b.add("河");
b.add("入");
b.add("海");
b.add("流"); System.out.println(b.equals(a)); System.out.println(a);
System.out.println(b); System.out.println(a.hashCode());
System.out.println(b.hashCode()); //System.out.println(a.removeAll(b)); System.out.println(a);
System.out.println("==================="); Object[] c = a.toArray();
String s = null;
for (int i = 0; i < c.length; i++) {
s = (String) c[i];
System.out.println(s);
} }
}

例五:
import java.util.ArrayList;
import java.util.Collection; public class CollT {
public static void main(String[] args) { Collection<String> a = new ArrayList<String>();
Collection<String> b = new ArrayList<String>(); a.add("白");
a.add("日");
a.add("依");
a.add("山");
a.add("尽"); //a.remove("4"); b.add("黃");
b.add("河");
b.add("入"); System.out.println(b.equals(a)); System.out.println(a);
System.out.println(b); System.out.println(a.hashCode());
System.out.println(b.hashCode()); //System.out.println(a.removeAll(b)); System.out.println(a);
System.out.println("==================="); Object[] c = a.toArray();
String s = null;
for (int i = 0; i < c.length; i++) {
s = (String) c[i];
System.out.println(s);
} }
}

例六:
import java.util.ArrayList;
import java.util.Collection; public class CollT {
public static void main(String[] args) { Collection<String> a = new ArrayList<String>();
Collection<String> b = new ArrayList<String>(); a.add("白");
a.add("日");
a.add("依");
a.add("山");
a.add("尽"); a.remove("4"); b.add("黃");
b.add("河");
b.add("入"); System.out.println(b.equals(a)); System.out.println(a);
System.out.println(b); System.out.println(a.hashCode());
System.out.println(b.hashCode()); System.out.println(a.removeAll(b)); System.out.println(a);
System.out.println("==================="); Object[] c = a.toArray();
String s = null;
for (int i = 0; i < c.length; i++) {
s = (String) c[i];
System.out.println(s);
} }
}

二、List与set常用方法
/*List集合的特有特性
*
*public interface List<E>extends Collection<E>
*-- add(int index, E element) 在列表的指定位置插入指定元素
*-- addAll(int index, Collection<? extends E> c)
*-- E get(int index) //返回列表中指定位置的元素。
*-- int indexOf(Object o) // 返回此列表中第一次出现的指定元素的索引
*-- listIterator()
*-- e set(int index, E element) // 用指定元素替换列表中指定位置的元素
*-- void remove(int position) 移除指定位置的元素
*-- List<E> subList(int fromIndex, int toIndex ) 类似substring()
*/
import java.util.ArrayList; class CollT {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
list.add("Java"); // 下標是0
list.add("Class"); // 下標是1
list.add("Array"); // 下標是2
list.add("Collection"); // 下標是3
list.add("List"); // 下標是4
list.add("Set"); // 下標是5
System.out.println(list.subList(0, 3));// 注意不包含下標是3的
}
}

Java基础——collection接口的更多相关文章
- Java基础-Collection子接口之Set接口
Java基础-Collection子接口之Set接口 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 学习Collection接口时,记得Collection中可以存放重复元素,也可 ...
- Java基础-Collection子接口之List接口
Java基础-Collection子接口之List接口 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们掌握了Collection接口的使用后,再来看看Collection接口中 ...
- Java基础十--接口
Java基础十--接口 一.接口的定义和实例 /* abstract class AbsDemo { abstract void show1(); abstract void show2(); } 8 ...
- Java基础-面向接口(interface)编程
Java基础-面向接口(interface)编程 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.接口的概念 接口是功能的集合,同样可看做是一种数据类型,是比抽象类更为抽象的“类 ...
- Java基础 -- Collection和Iterator接口的实现
Collection是描述所有序列容器(集合)共性的根接口,它可能被认为是一个“附属接口”,即因为要表示其他若干个接口的共性而出现的接口.另外,java.util.AbstractCollection ...
- java SE基础(Collection接口概述)
Collection接口相关集成关系例如以下图 1. 关于可迭代接口(Iterable) 可迭代接口仅包括一个方法,返回一个在一组T类型元素上进行迭代的迭代器: public ...
- Java 之 Collection 接口
一.Collection 集合 Collection:单列集合类的根接口,用于存储一系列符合某种规则的元素,它有两个重要的子接口,分别是 java.util.List 和 java.util.Set. ...
- java集合——Collection接口
Collection是Set,List接口的父类接口,用于存储集合类型的数据. 2.方法 int size():返回集合的长度 void clear():清除集合里的所有元素,将集合长度变为0 Ite ...
- java.util (Collection接口和Map接口)
1:Collection和Map接口的几个主要继承和实现类 1.1 Collection接口 Collection是最基本的集合接口,一个Collection代表一 ...
随机推荐
- 背水一战 Windows 10 (48) - 控件(集合类): FlipView
[源码下载] 背水一战 Windows 10 (48) - 控件(集合类): FlipView 作者:webabcd 介绍背水一战 Windows 10 之 控件(集合类) FlipView 示例Fl ...
- 【转】C#中virtual和abstract的区别
virtual和abstract都是用来修饰父类的,通过覆盖父类的定义,让子类重新定义. 它们有一个共同点:如果用来修饰方法,前面必须添加public,要不然就会出现编译错误:虚拟方法或抽象方法是不能 ...
- 【文文殿下】[APIO2010]特别行动队 题解
基本上是一个斜率优化裸题了 #include<bits/stdc++.h> using namespace std; typedef long long ll; const int max ...
- C#6.0语言规范(十三) 接口
接口定义合同.实现接口的类或结构必须遵守其合同.接口可以从多个基接口继承,并且类或结构可以实现多个接口. 接口可以包含方法,属性,事件和索引器.接口本身不为它定义的成员提供实现.接口仅指定必须由实现接 ...
- Redis---Hash(字典)
1. 概述 Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象. Redis 中每个 hash 可以存储 232 - 1 键值对(40多亿). ...
- nginx官方文档 之 http负载均衡 学习笔记
一.负载均衡 算法 大致可以分两类: (1)不能保证用户的每一次请求都通过负载均衡到达同一服务器. (2)可保证用户的每一次请求都通过负载均衡到达同一服务器. 第二类的应用场景: 1.如果服务器有缓存 ...
- Shell - 简明Shell入门09 - 重定向(Redirection)
示例脚本及注释 #!/bin/bash pwd > 1.log # 输出重定向到指定文件 date 1> 1.log # ">"与"1>" ...
- python学习笔记10-文件操作
能调用方法的一定是对象.文件本身也是一个对象.有很多自己内置的方法 #操作文件第一件事 建立文件对象 open函数 # 参数一:文件路径 绝对路径和相对路径都可以 # 参数二:模式选择 ‘r’ 读模式 ...
- python 数据库连接及操作
Python DB-API使用流程: 引入API模块. 获取与数据库的连接. 执行SQL语句和存储过程. 关闭数据库连接. def mysql_dbtest(): config = { 'host': ...
- Eleasticsearch启动失败问题解决
问题: [root@dnode1 bin]# ./elasticsearch -d [root@dnode1 bin]# Exception in thread "main" ja ...