Java基础入门习题答案 联系客服

发布时间 : 星期日 文章Java基础入门习题答案更新完毕开始阅读

}

}

}

2、 参考答案

public class Test02 { }

public static void main(String[] args) { }

Calendar calendar = (); , 100);

Date date = (); DateFormat format = ; String string = (date);

3、 参考答案

public class Test03 { }

public static void main(String[] args) {

Random rand = new Random(); int[] num = new int[5]; for (int i = 0; i < ; i++) { num[i] = 20 + (31); } }

第6章 集合类

一、填空题

1、集合

2、Comparator

3、有序、可重复,无序、不可重复 4、hashNext()、next() 5、Collection、Map 6、键、值

7、ListIterator

8、ArrayList、LinkedList,HashSet、TreeSet,HashMap、TreeMap 9、put()、get()

10、Collections、Arrays 二、判断题

1、错 2、对 3、对 4、错 5、对 三、选择题

1、BC 2、A 3、D 4、ABD 5、C 6、AB 7、D 8、AB 9、ABC 10、B 四、程序分析题

1、程序可以编译通过,输出结果是“a、b、c”,因为TreeSet集合不允许存放重复元素,第2次增加的元素c会覆盖之前存入的元素c,所以输出结果是“a、b、c”,而不是“a、b、c、c”。 2、程序不可以编译通过,这是由于向ArrayList集合中存入元素时,集合并不能记住元素的类型,

因此在取出元素时,只能使用Object类型,而不能使用String类型。

3、程序可以编译通过,但是什么也没有打印。使用ListIterator进行从后向前的遍历集合,可以使用以下两种方法,一是使用listIterator(int index)方法将索引index的值设置为集合元素的数目,也就是ListIterator it = (3);,二是将程序先从前向后遍历,然后再从后向前遍历。

4、程序编译不通过,由于Map集合在遍历的过程中不能使用集合对象本身删除元素,这会导致并发修改异常,若想删除集合中的元素,可以使用Iterator的remove()方法。

五、简答题

1、为了使程序能方便的存储和操作数目不固定的一组数据,JDK提供了一套类库,这些类都位 于包中,统称为集合。集合框架中包含3个接口,分别是List、Set、Map。

2、List的特点是元素有序、元素可重复。List接口的主要实现类有ArrayList和LinkedList。Set的特点是元素无序、元素不可重复。Set接口的主要实现类有HashSet和TreeSet。Map的特点是存储的元素是键(Key)、值(Value)映射关系,元素都是成对出现的。Map接口的主要实现类有HashMap和TreeMap。 3、Collection是一个单例集合接口。它提供了对集合对象进行基本操作的通用方法。Collections是一个工具类。它包含各种有关集合操作的方法。

六、编程题

1、参考答案

import .*;

public class Test01 { }

public static void main(String[] args) { }

ArrayList list = new ArrayList(); for(int i = 0; i < 10; i++) { }

Iterator it = (); while()) { }

(\

Object obj = ();

2、参考答案

import .*;

public class Test02 {

public static void main(String[] args) {

HashSet hashSet = new HashSet(); Person p1 = new Person(\ Person p2 = new Person(\ Person p3 = new Person(\ (p1); (p2); (p3);

for(Object obj:hashSet){ }

Person p=(Person)obj;

}

}

class Person{ }

String name; int age;

public Person(String name, int age) { }

public int hashCode() { return (); }

public boolean equals(Object obj) { }

if (this == obj)

return true; return false; if (obj == null)

Person other = (Person) obj; super(); = name; = age;

3、参考答案

import .*;

public class Test03 { }

class MyComparator implements Comparator { }

public int compare(Object obj1, Object obj2) { }

String ele1 = (String) obj1; String ele2 = (String) obj2; return (ele1);

public static void main(String[] args) { }

TreeMap map = new TreeMap(new MyComparator()); (\ (\ (\ (\ (\ for (Object key : ()) { }

+ \

第7章 IO(输入输出)

一、填空题

1、 字节流、字符流 2、 File、

3、 SequenceInputStream 4、 RandomAccessFile 5、 管道流

6、 LineNumberReader、BufferedReader、setLineNumber(int)、getLineNumber() 7、 字节流、字符流

8、 PrintStream、setOut(PrintStream out) 9、 Unicode 10、newLine() 二、判断题

1、 错 2、对 3、对 4、对 5、错 三、选择题

1、AB 2、C 3、C 4、ABCD 5、AB 6、ACD 7、A 8、A 9、D 10、A 四、程序填空题

1、InputStreamReader、()、运行结果为2

2、FileInputStream(file1)、FileOutputStream、()

五、问答题

1、Java程序通过流来完成输入和输出,流是输入或输出信息的抽象。流通过Java的输入/输出系统与外设连接进行数据通信。流是抽象的对象,具体实现代码在包中。

2、字节流的两个基类是InputStream和OutputStream,字符流的两个基类是Reader和Writer,它们都是Object类的直接子类,字节流是处理以8位字节为基本单位的字节流类;Reader和Writer类是专门处理16位字节的字符流类。

3、管道流分为管道输入流(PipedInputStream)和管道输出流(PipedOutputStream),通常由一个PipedInputStream实例对象和一个PipedOutputStream实例对象相互连接而实现管道通信,PipedOutputStream向管道写入数据,PipedInputStream从管道中读取PipedOutputStream写入的数据,管道流主要用来完成线程之间的通信。

六、编程题 1、参考答案

import .*;

public class Test01 {

public static void main(String[] args) throws Exception {

;

public class Test02 {

public static void main(String[] args) throws Exception {

BufferedReader br = new BufferedReader(new InputStreamReader); String password = \ boolean b = false;

for (int i = 0; i < 5; i++) {

password = (); if (\