20170824 - Q - 集合框架

1 集合存储的是什么类型数据?如果存储的是基本类型数据呢?

2 集合存储的是什么?

3 集合分为几种?

4 如果改变元素的值,集合内存放的元素会改变吗?

5
public static void main(String[] args) {
// TODO Auto-generated method stub
Collection c = new ArrayList();
point p = new point(1,2);
c.add(p);
System.out.println("p:"+p);
System.out.println("c:"+c);

test(p);
System.out.println("p:"+p);
System.out.println("c:"+c);
}

public static void test(point p){
p.setX(3);
p = new point(3,5);

p的值为多少?

6 集合的add方法返回的是什么?

7 contains(element)判断的是什么?如何判断?

8 如果不重写equals方法调用?

9 如何获取集合内的元素个数?

10 如何清空集合内元素?

11 如何判断集合是否为空?

12 Collection c1 = new ArrayList();发生的是什么?

13 如何讲一个集合内的所有元素添加到另一个?

14 hashSet添加c2集合时,c2内含有重复元素是否会继续添加?返回值是什么?

15 如何判断某集合是否包含另一集合所有元素?

16 如何通过另外一个集合来删除原有集合的相同元素?

17 如何遍历集合?为何遍历出的元素需要强转?

18 比较两个字符串应如何写判断式?
“#”.equals(str)

18 如何使用迭代器?

19 使用迭代器时可否更改集合(集合的方法)?可以通过什么方法删除?

20 java特性是什么认可,有什么含义?

21 接口的实现类实例化的对象向上造型给接口对象,是否能调用toString()方法?

22 如何使用加强for循环?

23 泛型可以用于规定基本类型数据吗?如何定义?

24 泛型用于?泛型可以指定多少个类型?泛型不指定时是什么型?
规定类内参数类型/集合传入参数类型,多个,Object

25
public class Point<E> {
private E x;
private E y;

public Point(E x,E y){
super();
this.x = x;
this.y = y;
}

public E getX(){
return x;
}

public void setX(E x){
this.x = x;
}

public String toString(){
return "["+x+","+y+"]";
}

public static void main(String[] args) {
// TODO Auto-generated method stub

}

}

Point p1 = p;
p1.setX("一");
int x1 = p.getX();
System.out.println(p);
System.out.println(p1);

26 如何规定集合内的元素类型?

27 掌握迭代器循环及新循环。

29 数组 动态数组 链表 集合的特点与区别

30 使用list时需注意?

31 如何更换list内元素?返回的是什么?

32 List是Collection的子类型接口,List是可重复集,并且有序,提供了一套可以根据下标操作元素的方法
*
* 常见实现类:
* java.util.ArrayList:数组实现,查询效率高
* java.util.LinkedList:链表实现,增删元素效率高
* 尤其是首尾增删元素

33 List的更换,删除,追加,添加所调用的方法及返回值。

34 下方代码是否能正常运行?
List<Integer> list = new ArrayList<Integer>();
ArrayList<Integer> subList = list.subList(2,7)
System.out.println(subList);

35 使用List统合数据的思路

36 如何获取List型数据某段的集合,对获取的该段子集进行操作后原集合是否会改变?
List<Integer> sList = list.subList(3,8);

37 如何快速删除集合内某段元素?

38 集合和数组的互转。
public class CollectionToArrayDemo {

public static void main(String[] args) {
// TODO Auto-generated method stub
Collection<String> list = new ArrayList<String>();
list.add("one");
list.add("one");
list.add("one");
String[] oo = list.toArray(new String[list.size()]);
for(String str:oo){
System.out.println(str );
}

}

}

public class ArrayToCollection {

public static void main(String[] args) {
// TODO Auto-generated method stub
String[] array = {"one","one","one","one","one"};
/*
*
* 数组转换的集合是不能添加元素的
* 更改转换而来的集合的元素原有的数组亦会改变
*/
List<String> list = Arrays.asList(array);
System.out.println("size:"+list.size());
System.out.println(list);
list.set(0, "1");
System.out.println(list);
for(String str:array){
System.out.println(str);
}

List<String> list1 = new ArrayList<String>(list);

System.out.println("list1:"+list1);
list1.add("six");
System.out.println("list1:"+list1);
}

}

39 int[]/Integer[]

41 数组可以直接输出显示吗?集合呢?

A.Collection是一个接口,定义了集合相关的操作方法

B.List接口与Set接口继承自顶级接口Collection,

C1.List中的实现类为ArrayList,LinkedList→D1
C2.Set接口的实现类为...

D1.ArrayList及LinkedList的比较,

E.List类元素的更换,删除,追加,添加,切片所调用的方法及返回值。

F.一些通用方法,
判断集合A是否包含所有集合B的元素用什么方法?又是怎么判断的?

如何获取集合内的元素个数?

如何清空集合内的元素?

如何判断集合是否为空?

如何让A集合添加B集合所有元素?

C列表如何在初始化时便添加所有D数组的元素?

如何遍历集合?

如何使用迭代器和加强for循环?

OTHER.
集合中存储的是什么?

可以直接往集合中存储基本类型数据吗?

有序A集合添加到无序B集合,会出现什么?

如何快捷删除集合中的某一段?如何快速删除集合内某些元素?

数组可以转化为随机集吗?
不可。

---
泛型
如何设置?

类的泛型
将规定传入数据类型的权限交给用户
public class Point<E> {
private E x;
private E y;

public Point(E x,E y){
super();
this.x = x;
this.y = y;
}

public E getX(){
return x;
}

public void setX(E x){
this.x = x;
}

public String toString(){
return "["+x+","+y+"]";
}

public static void main(String[] args) {
// TODO Auto-generated method stub

}

}

集合的泛型
集合原本可以存储各种数据。
用泛型规定传入数据类型。
List<String> list = Arrays.asList(array);
System.out.println("size:"+list.size());

---
如何调用加强for循环?
for(数据类型 str:数组/List/Set){
System.out.println(str);
}

---
什么情况下操作切片会使得原有集合或数组元素改变?

泛型后的集合及方法可传入参数及返回值的类型?

时间: 2024-10-14 11:59:52

20170824 - Q - 集合框架的相关文章

20170824 - A - 集合框架

1 集合存储的是什么类型数据?如果存储的是基本类型数据呢?引用类型.会自动装箱. 2 集合存储的是什么?引用的地址. 3 集合分为几种?两种,List,可重复集Set,不可重复集 4 如果改变元素的值,集合内存放的元素会改变吗?会,因为集合存放的是地址. 5 public static void main(String[] args) { // TODO Auto-generated method stub Collection c = new ArrayList(); point p = ne

8. 集合框架:★★★★★

集合框架:★★★★★,用于存储数据的容器. 特点: 1:对象封装数据,对象多了也需要存储.集合用于存储对象. 2:对象的个数确定可以使用数组,但是不确定怎么办?可以用集合.因为集合是可变长度的. 集合和数组的区别: 1:数组是固定长度的:集合可变长度的. 2:数组可以存储基本数据类型,也可以存储引用数据类型:集合只能存储引用数据类型. 3:数组存储的元素必须是同一个数据类型:集合存储的对象可以是不同数据类型.   数据结构:就是容器中存储数据的方式. 对于集合容器,有很多种.因为每一个容器的自身

Java集合框架中隐藏的设计套路

我们的世界不应该只有"胡萝卜" 进入正题之前容我先扯点别的. 最近突然想到了一个驴子和胡萝卜不得不说的故事.说是一个人坐在驴子背上,用一根长杆绑着一根胡萝卜,然后把胡萝卜悬到驴子的面前,驴子以为只要向前走一步就可以吃到胡萝卜,于是不停地向前走,可是它始终无法吃到这根萝卜. 一千个读者就有一千个哈姆雷特,当然不同的人对这个故事也会有不同的理解.比如我们为了生活拼命地工作,却永远达不到财务自由,我们是不是也像一只忙碌的"驴子"呢? 所以,我们的世界不应该只有"

Java集合框架(二)

Set Set:无序,不可以重复元素. |--------HashSet:数据结构是哈希表. 线程是非同步的.保证元素唯一性的原理是:判断元素的hashCode值是否相同,如果相同,还会继续判断元素的equals方法,是否为true |--------TreeSet:可以对Set集合中元素进行排序.  底层数据结构是二叉树(也叫红黑树),保证元素唯一性的依据是:compareTo()方法return 0. TreeSet排序的第一种方式:让元素自身具备比较性.元素需要实现Comparable接口

Java基础---泛型、集合框架工具类:collections和Arrays

第一讲     泛型(Generic) 一.概述 1.JDK1.5版本以后出现的新特性.用于解决安全问题,是一个类型安全机制. 2.JDK1.5的集合类希望在定义集合时,明确表明你要向集合中装入那种类型的数据,无法加入指定类型以外的数据. 3.泛型是提供给javac编译器使用的可以限定集合中的输入类型说明的集合时,会去掉“类型”信息,使程序运行效率不受影响,对参数化的泛型类型,getClass()方法的返回值和原始类型完全一样. 4.由于编译生成的字节码会去掉泛型的类型信息,只要能跳过编译器,就

Java编程练习(四)——集合框架应用

Java集合框架小应用之扑克牌小游戏 学习了Java集合框架之后,我写了一个扑克牌小游戏来巩固知识.学习之余的练习之作,有不足之处还得多多指教了~(*/ω\*) 扑克牌小游戏背景: 1. 创建一副扑克牌,不考虑大小王 包括四种花色:黑桃.红桃.梅花.方片 十三种点数:2-10,J Q K A 2. 创建两名玩家,玩家至少要有ID.姓名.手牌等属性,手牌为扑克牌的集合 3. 洗牌,将之前创建的扑克牌顺序打乱(说明是有序的) 4. 发牌,将洗牌之后的扑克牌集合,从第一张开始,发给两名玩家,按照一人一

day18&lt;集合框架+&gt;

集合框架(Map集合概述和特点) 集合框架(Map集合的功能概述) 集合框架(Map集合的遍历之键找值) 集合框架(Map集合的遍历之键值对对象找键和值) 集合框架(Map集合的遍历之键值对对象找键和值源码分析) 集合框架(HashMap集合键是Student值是String的案例) 集合框架(LinkedHashMap的概述和使用) 集合框架(TreeMap集合键是Student值是String的案例) 集合框架(统计字符串中每个字符出现的次数) 集合框架(集合嵌套之HashMap嵌套Hash

Java集合框架(四)_day18

18.集合框架(Map集合概述和特点) A:Map接口概述 查看API可以知道: 将键映射到值的对象 一个映射不能包含重复的键 每个键最多只能映射到一个值 B:Map接口和Collection接口的不同 Map是双列的,Collection是单列的 Map的键唯一,Collection的子体系Set是唯一的 Map集合的数据结构值针对键有效,跟值无关;Collection集合的数据结构是针对元素有效 18.集合框架(Map集合的功能概述) A:Map集合的功能概述 a:添加功能 V put(K

JAVA学习第三十五课(常用对象API)- 集合框架(三)—Vector、LinkedList、ArrayList集合演示

集合框架构成图 摘自百度图片 一.Vector集合 演示 虽然Vector已经不常用了,但是还是要了解一下其中的方法 import java.util.ArrayList; import java.util.Enumeration; import java.util.Iterator; import java.util.LinkedList; import java.util.List; import java.util.ListIterator; import java.util.Vector