· 问题:
· 既然有了数组,为什么还要ArrayList?__________
· 答:因为数组大小本来不可变;如果要变化,则必须重新分配内存,太消耗资源。
· 数组只能同一种基本数据类型;或者同一个类的对象(排除Object)。
· ArrayList中有重复元素吗?______,因为_______。增加值的顺序是1,3,4,5,1,那么输出的的值顺序为(考虑重复值和值的排序):_______。
· 答:有。因为ArrayList也是在Array的基础之上开发的(或者说:封装了数组),由于数组可以保存重复元素的值,所以ArrayList也可以。输入的值顺序为1,3,4,5,1。道理相同。
· TreeSet中有重复元素吗?________,因为_______。增加值的顺序是1,3,4,5,1,那么输出的的值顺序为_______
· 答:无。因为:ArrayList叫做有序列表,有顺序就可以通过下标来标识,所以元素可以重复。Set叫做无序列表,只能通过值的本身来标识,所以值是不以重复的;由于无序,所以每次输出的结果不可预料。输出结果为:1,3,4,5(可能的顺序,关键是重复的1没有出现。在JDK5.0以后,1可以自动由int转化为Integer类型)。
· 当数据集经常在中间插入、删除时,用集合的哪种类型:_______,因为______。
· 答:LinkedList。因为:LinkedList叫做链表;链表的数据结构适合在元素增加或减少时,对整体的内存没有影响;只是影响两个相邻的元素。而ArryList是底层封装了Array,所以在元素变化时仍然要重新分配内存。
· 当数据集常在后面追加时,用_______,因为_____________。
· 答:用ArrayList。因为SUN针对这个问题做了比较好的封装。
· 单个循环输出,效率比较高的是________,因为___________。
· 答::用ArrayList,因为它是有序列表,是通过下标进行访问的,所以效率最高。
· Vector与ArrayList的区别是:________。
· 答:两者功能完全相同。但是Vector用于多线程,不会有线程安全问题。因为Vector用了Sychronized关键字。而ArrayList没有用,所以ArrayList线程不安全,Vector线程安全。但是Vector被称为“过时的”,是不是就不能用了呢。不是。称为过时的原因是因为ArrayList很容易就变成线程安全的(加一句代码即可),这样ArrayList即可以用于单线程环境,又可以很方便地在多线程环境中使用,所以相比之下Vector就过时了。
· Set中的元素都是不能重复的,那HashSet与TreeSet的区别?
答:假设输入值的顺序为:1,4,3,1,用HashSet输出的顺序为:1,4,3(可能);用TreeSet输出的顺序为:1,3,4(如Windows的文件夹,不能重复,且有顺序)。
· HashTable与HashMap的区别是:_______
答:Table就是表的意思(如学生表的学号列,特征是不能重复,而且不能为空。表是可以多个人访问的,所以线程是安全的)。HashMap的Key值是可以为空的,线程是不安全的。
分享到:
- 2007-08-15 13:17
- 浏览 2199
- 评论(3)
- 论坛回复 / 浏览 (2 / 2650)
- 查看更多
相关推荐
Java集合面试问题
Java集合面试问题和答案
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
完整版精品java课件 Java基础入门教程 Java程序设计 第6章 数组和集合(共44页).ppt 完整版精品java课件 Java基础入门教程 Java程序设计 第7章 字符串处理(共38页).ppt 完整版精品java课件 Java基础入门教程 Java...
java集合 java集合思维导图 java集合总结
Java基础入门教程 Java编程技术10 集合框架(略)(共48页).ppt Java基础入门教程 Java编程技术11 Java IO(2学时)(共30页).ppt Java基础入门教程 Java编程技术12 网络编程(2学时)(共20页).ppt Java基础入门教程 ...
java泛型集合 java集合 集合 java Collection 排序 集合排序
Java基础入门教程 第6章 集合框架(共28页).ppt Java基础入门教程 第7章 Java中的异常处理(共26页).ppt Java基础入门教程 第8章 文件流的输入输出操作(共37页).ppt Java基础入门教程 第9章 Java的高级特性(共...
完整版 Java基础入门教程 Java程序语言设计 03 java对象 集合框架(共18页).ppt 完整版 Java基础入门教程 Java程序语言设计 03 java对象 类和对象1(共23页).ppt 完整版 Java基础入门教程 Java程序语言设计 03 ...
java集合
Java集合框架总结Java集合框架总结Java集合框架总结Java集合框架总结Java集合框架总结Java集合框架总结
java教程java教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zip...
java集合基础习题及答案,
键盘录入5个学生信息(姓名,语文成绩,数学成绩,英语成绩),按照总分从高到低输出到控制台java 集合练习题
Java集合排序及java集合类详解,对list,set,map等java集合进行详细讲解
完整版精品java课件 Java基础入门教程 Java程序设计 第6章 数组和集合(共44页).ppt 完整版精品java课件 Java基础入门教程 Java程序设计 第7章 字符串处理(共38页).ppt 完整版精品java课件 Java基础入门教程 Java...
java Java教程 Java入门教程 Java教程集合java Java教程 Java入门教程 Java教程集合java Java教程 Java入门教程 Java教程集合java Java教程 Java入门教程 Java教程集合java Java教程 Java入门教程 Java教程集合
java入门java入门java入门java入门java入门java入门java入门java入门
Java2入门经典9Java2入门经典9Java2入门经典9Java2入门经典9Java2入门经典9Java2入门经典9Java2入门经典9Java2入门经典9Java2入门经典9Java2入门经典9Java2入门经典9
Java基础入门教程 第6章 集合框架(共28页).ppt Java基础入门教程 第7章 Java中的异常处理(共26页).ppt Java基础入门教程 第8章 文件流的输入输出操作(共37页).ppt Java基础入门教程 第9章 Java的高级特性(共...