20170825 - Q - 集合框架 、 集合操作 —— 线性表

1 什么时候需要泛型?

2 泛型实际上真的泛型了吗?

3 哪些集合可以排序?

4 下方代码是否会报错
public class Collections_sort {

public static void main(String[] args) {
// TODO Auto-generated method stub
Collections<Integer> c = new ArrayList<Integer>();
for(int i = 0;i <10;i++){
Random rand = new Random();
c.add(rand.nextInt(100));
}
Collections.sort(c);
System.out.println(c);
}

}

5 字符串是按照什么排序?

6 什么类实现Comparable接口,就泛型什么接口.

7 重写comparable方法需注意什么?

8 排序后数组的顺序变化吗?还是需要重新赋值给另外一个数组?

9 耦合性是什么?

10 建议用哪种自定义排序方式?

11 如何重写比较器?
public class Collections_sort4 {

public static void main(String[] args) {
// TODO Auto-generated method stub
List<String> listStr = new ArrayList<String>();
listStr.add("这是一个段字符串。");
listStr.add("这是一个段字符。");
listStr.add("这是一个段字。");

Collections.sort(listStr,new Comparator<String>(){
public int compare(String o1, String o2){
int o1len = o1.length();
int o2len = o2.length();
return o1len - o2len;
}
});

System.out.println(listStr);
}

}

12 队列用于?

13 LinkedList实现了Queue吗?队列入队操作是?出队操作是(是否会被删除)?引用队首元素呢?

14 队列可以叠代吗?

15 如何取出队列中所有元素?

16 栈是什么?它实现了什么类?

17 双端队列如何添加去除访问首尾元素?(如何出栈,进栈)

18 如何遍历栈?

19 哈希表,散列表,HashMap是什么?

20 如何定义哈希表?如何插入 key-value对 到哈希表中?

21 建议用基本类型接收put的返回值吗?

22 Queue是什么?

23 如何获取查找表指定key的value?

24 map的遍历有几种方式?

25 可能干扰map提取效率的因素是?

26 如何创建hashCode方法?

27 map装载一个键值对的过程是?

28 队列与栈分别遵循什么原则?

29 何时需要泛型?

30 这句话什么含义?
Set<key> keySet()
keySet()方法返回Set<key>

——————
比较器的创建,查找表的遍历。

26 未熟练掌握知识点
Map<Character,Integer> map = new HashMap<Character,Integer>();
查找表的定义
key及value皆为引用类型

加强for循环的定义
for(Character chara:c)

可以利用Set去重(遇到已录入元素自动跳过)

何时需要泛型?
泛型发生在定义数据类型时。
不用生硬去记,当需要定义类型时便需要泛型(定义传入参数的类型)
Set<Entry> entrySet()

Set<Entry<String,Integer>> entrySet = map.entrySet();

for(Entry<String,Integer> e:entrySet){}
//使用新循环时,需要先定义传入参数类型

posted @ 2017-08-25 23:16  清及  阅读(120)  评论(0)    收藏  举报