1.(集合框架)下面都属于线程安全的类是(BD )。
线程同步就是线程安全的
A.ArrayList//不同步
B.Vector//同步,其余功能与ArrayList一样
C.HashMap//不同步
D.HashtableA.//同步,其余功能和Hashtable一样
2.(集合框架)ArrayList的初始化内容如下:
ArrayList list = new ArrayList();
list.add("java");
list.add("aaa");
list.add("java");
list.add("java");
list.add("bbb");
下面可以删除list中所有的“java”的代码是:(A)
A.for (int i = list.size() - 1; i >= 0; i--) {//规定是逆序删除,每删除一个,会重新排序
if ("java".equals(list.get(i))) {
list.remove(i);
}
}
B.for (int i = 0; i < list.size(); i++) {
if ("java".equals(list.get(i))) {
list.remove(i);
}
}
C.list.remove("java"); //只能删除第一个
D.list.removeAll("java");//括号中的参数是集合的类型
3.下面的代码用于输出字符数组ch中每个字符出现的次数,应该填入的代码是(D)
public static void main(String[] args) {
char[] ch = { 'a', 'c', 'a', 'b', 'c', 'b' };
HashMap map = new HashMap();
for (int i = 0; i < ch.length; i++) {
< 填入代码 >
}
System.out.println(map);
}
//map中没有contains方法,这个方法只有List和Set中有
A.if (map.contains(ch[i])) {
map.put(ch[i], map.get(ch[i]) + 1);
} else {
map.put(ch[i], 1);
}
B.if (map.contains(ch[i])) {
map.put(ch[i], (Integer) map.get(ch[i]) + 1);
} else {
map.put(ch[i], 1);
}
C.if (map.containsKey(ch[i])) {
map.put(ch[i], (int) map.get(ch[i]) + 1);
} else {
map.put(ch[i], 1);
}
D.if (map.containsKey(ch[i])) {
map.put(ch[i], (Integer) map.get(ch[i]) + 1);
} else {
map.put(ch[i], 1);
}
4.(集合框架) 题示代码的功能为:对于一个存放Integer对象的ArrayList,内容为:{1,2,3 },对其进行循环遍历:
List list=new ArrayList();
list.add(1);
list.add(2);
list.add(3);
for(int i=0;i<《插入代码1》;i++){
Integer obj=(Integer)《插入代码2》;
System.out.println(obj);
}
那么《插入代码1》和《插入代码2》处的代码分别为(C)
A. list.getObject(i) list.length()
B. list.length() list.getObject(i) //集合没有length,只要数组才有,集合是size()
C. list.size() list.get(i)
D. list.get(i) list.size()
5.题示代码的功能为:对于一个存放Person对象的ArrayList进行循环遍历,并取到每个Person对象的idCard和userName。
public class Person{
private Long idCard;
pirvate String userName;
//一下是getter和setter方法
……
}
List<Person> list=new ArrayList<Person>();
Person p1=new Person();
p1.setIdCard(new Long(1001));
p1.setUserName(“terry”);
Person p2=new Person();
p2.setIdCard(new Long(1002));
p2.setUserName(“tom”);
list.add(p1);
list.add(p2);
for(《插入代码》){
System.out.println(person.getIdCard()+”:”+person.getUserName());
}
那么《插入代码》处的代码为(D)
A. List list:person
B. List list:Person //遍历list中的Person
C. Person person:List
D. Person person:list//在list中遍历person
6.已知类Foo的定义如下:
public class Foo {
int value;
Foo(int value) {
this.value = value;
}
public boolean equals(Object obj) {
if (obj instanceof Foo) {
Foo foo = (Foo) obj;
return value == foo.value;
} else {
return false;
}
}
运行下面程序段:
ArrayList list = new ArrayList();
HashSet set = new HashSet();
list.add(new Foo(1));
set.add(new Foo(1));
System.out.println(《插入代码》);
如果控制台输出的结果是true,false,那么《插入代码》处应填入的代码是(C)
A. list.contains(new Foo(1)) + ","+ set.contains(new Foo(1))
B. set.contains(new Foo(1)) + ","+ list.contains(new Foo(1))
C. new Foo(1).equals (new Foo(1)) + ","+ list.contains(new Foo(1))
D. new Foo(1).equals (new Foo(1)) + ","+ set.contains(new Foo(1))//没有重写hashCode()方法
7.(集合框架)题目代码的功能是:采用Iterator进行循环遍历到集合中的每一个元素,并将其移除,《插入代码》处应填入的代码是(A)
ArrayList list = new ArrayList();
list.add("java");
list.add("php");
list.add(".net");
《插入代码》
A. Iterator it=list.iterator();
while(it.hasNext()){
it.next();
it.remove();
}
B. Iterator it=list.iterator();
while(it.hasNext()){
it.remove();
}
C. Iterator it=list.iterator();
while(it. hasNext()){
Object obj=it.next();
list.remove(obj);
}
D. Iterator it=list.iterator();
while(it.hasNext()){
list.remove();
}
8.题示代码的功能为:循环遍历输出Map当中的每一个元素
Map<String,Integer> map=new HashMap<String,Integer>();
map.put(“jessica”,100);
map.put(“tom”,200);
map.put(“den”,300);
Set《插入代码1》 set =《插入代码2》;(D)
for (《插入代码3》 per : set) {
System.out.println(per.getKey() + ":" + per.getValue());
}
A.
<Entry>
map.keySet()
Entry
B.
<Entry>
map.entrySet()
Entry
C.
<Map.Entry<String, Integer>>
map.keySet()
Map.Entry<String, Integer>
D.
<Map.Entry<String, Integer>>
map.entrySet()
Map.Entry<String, Integer>
9.请看一下代码:(A)
Map<String,Double> map=new HashMap<String,Double>();
map.put(“tom”,123.6);
map.put(“jim”,234.5);
map.put(“terry”,45.3);
《插入代码》
《插入代码》处要实现的功能是把key为“jim”的value值在原有数字的基础上添加100
A. map.put(“jim”,map.get(“jim”)+100);
B. map.set(“jim”,map.get(“jim”)+100);
C. map.put(“jim”,234.5);
D. map.set(“jim”,234.5);
10.下列代码的运行结果是(“_”表示空白): (B)
public class Base{
private void test() {
String aStr = "_One_";
String bStr = aStr;//改变时候创建了新的对象,所以以前的没变化
bStr =aStr.trim();
System.out.println("[" + aStr + "," + bStr + "]");
}
static public void main(String[] a) {
new Base().test();
}
}
A. [One,_One_]
B. [_One_,One]
C. [One,One]
D. [_One_,_One_]
- 浏览: 36972 次
- 性别:
- 来自: 上海
相关推荐
Java程序员集合框架面试题-java集合框架面试题.pdf,这是一份不错的文件
Java集合框架是Java编程语言中的核心部分,它提供了一组高效的数据结构和算法,使得开发者能够方便地管理和操作数据。面试中,对于Java程序员来说,集合框架是必考的知识点,因为它涉及到程序的基础架构和数据处理...
2021-2022收藏的精品资料
根据提供的文档内容,文件是关于Java集合框架的面试题知识点总结。以下是Java集合框架的知识点详述: Java集合框架主要包括Collection接口和Map接口两大分支。Collection接口主要包括List、Set以及Queue三个子接口...
Java集合框架常见面试题 剖析⾯试最常⻅问题之 Java 集合框架 包含以下几个模块: 1、集合概述 2、Collection子接口之List 3、Collection子接口之Set 4、Map接口 5、Collection工具类 6、其他重要问题
Java集合框架是Java编程语言中...以上只是Java集合框架面试题的一部分,实际面试中还可能涉及更深入的问题,如集合的容量、负载因子、遍历性能优化等。理解并熟练掌握这些知识点对于成为一名优秀的Java开发者至关重要。
根据提供的信息,我们可以总结并详细解释关于Java集合框架的一些关键知识点。这些知识点主要涉及Java...理解这些概念对于深入学习Java集合框架至关重要,同时对于准备面试也非常有帮助。希望这些信息能够对你有所帮助!
Java 面试题、Java 框架面试题 Java 面试题是 Java 开发人员面试的必备知识,涵盖了 Java 基础知识、Java 框架、Java 集合框架、Java 多线程、Java 网络编程等方面的知识点。在本文中,我们将对 Java 面试题进行...
"Java集合框架面试题精讲" Java集合框架是Java语言中最重要的组件之一,掌握集合框架的知识点对于Java开发者来说非常重要。下面是Java集合框架的一些重要知识点: 1. Java集合框架是什么? Java集合框架是Java...
Java集合框架是Java编程语言的核心组成部分,为存储和操作对象提供了强大的工具。面试中,面试官经常关注候选者对集合框架的理解,特别是HashMap、HashTable、ArrayList、Vector、LinkedList以及EnumSet等类的区别和...
JAVA 框架面试题 本文将从 Spring、SpringMvc 和 Mybatis 三个方面对 JAVA 框架进行了详细的知识点整理。 Spring 1. Spring 在 SSM 中起什么作用? Spring 是一个轻量级框架,用来管理 Bean 的生命周期和框架...
Java集合框架是Java编程语言中用于存储和操作对象集合的一个体系结构。它定义了一套接口以及接口的具体实现,为Java程序员提供了大量集合类,用于保存和操作数据集合,如列表、集合、映射等。Java集合框架的主要优点...
Java集合框架是Java编程语言中的一个核心特性,它为数据存储和操作提供了丰富的类库。在面试中,Java集合框架的深入理解往往被视为衡量开发者能力的重要标准。本压缩包文件"java集合常见面试题.rar"包含了针对这个...