}
}
System.out.println(\
第6章 JavaAPI
一、填空题
1、 String、StringBuffer
2、 Date、Calendar、DateFormat 3、 getRuntime() 4、 sqrt()
5、 DateFormat 6、 π、e
7、 Random、java.util 8、 length() 9、 静态 10、edcba 二、判断题
1、错 2、错 3、对 4、错 5、对
三、选择题
1、C 2、C 3、D 4、C 5、C 6、B 7、C 8、A 9、A 10、B 四、程序分析题
1、程序编译能通过,输出结果如下
5 7.0 -8.0 -5 8.1 -6.1
2、程序编译能通过,输出结果如下
str.length():15 str.charAt(0):d lastIndexOf(m):10 substring(2,4):fe indexOf(g):5
五、简答题
1、String类是不可变类,即字符串值一旦初始化后就不可能改变。StringBuffer是可变字符串类,类似String的缓冲区,可以修改字符串的值。
2、Date类用来表示某个特定的瞬间,能够精确到毫秒。而在实际应用中,往往需要把一个日期中的年、月、日等信息单独返回进行显示或处理,这个类中的大部分方法都已被标记过时。Calender类基本取代了Date类,该类中定义了一系列用于完成日期和时间字段操作的方法。
Calendar的getTime()方法,getTime()返回一个表示Calendar时间值的Date对象,同时Calendar有一个setTime(Date date)方法,setTime()方法接收一个Date对象,将Date对象表示的时间值设置给
Calendar对象,通过这两个方法就可以完成Date和Calendar对象之间的转换。
六、编程题
1、 参考答案
public class Test01 { }
public static void main(String[] args) { }
String str = \// 字符串转成char数组
char[] ch = str.toCharArray();
StringBuffer buffer = new StringBuffer(); for (int i = str.length() - 1; i >= 0; i--) { }
System.out.println(buffer.toString());
if (ch[i] >= 'A' && ch[i] <= 'Z') { }
buffer.append(String.valueOf(ch[i]).toLowerCase()); buffer.append(String.valueOf(ch[i]).toUpperCase()); } else if (ch[i] >= 'a' && ch[i] <= 'z') {
2、 参考答案
import java.text.DateFormat; import java.util.Calendar; import java.util.Date; public class Test02 { }
public static void main(String[] args) { }
Calendar calendar = Calendar.getInstance(); calendar.add(Calendar.DATE, 100); Date date = calendar.getTime();
DateFormat format = DateFormat.getDateInstance(DateFormat.FULL); String string = format.format(date); System.out.println(string);
3、 参考答案
import java.util.Random; public class Test03 {
public static void main(String[] args) {
Random rand = new Random(); int[] num = new int[5];
for (int i = 0; i < num.length; i++) { num[i] = 20 + rand.nextInt(31); System.out.println(num[i]); } }
}
第7章 集合类
一、填空题
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 = list.listIterator(3);,二是将程序先从前向后遍历,然后再从后向前遍历。
4、程序编译不通过,由于Map集合在遍历的过程中不能使用集合对象本身删除元素,这会导致并发修改异常,若想删除集合中的元素,可以使用Iterator的remove()方法。
五、简答题
1、为了使程序能方便的存储和操作数目不固定的一组数据,JDK提供了一套类库,这些类都位 于java.util包中,统称为集合。集合框架中包含3个接口,分别是List、Set、Map。
2、List的特点是元素有序、元素可重复。List接口的主要实现类有ArrayList和LinkedList。Set的特点是元素无序、元素不可重复。Set接口的主要实现类有HashSet和TreeSet。Map的特点是存储的元素是键(Key)、值(Value)映射关系,元素都是成对出现的。Map接口的主要实现类有HashMap和TreeMap。
3、Collection是一个单例集合接口。它提供了对集合对象进行基本操作的通用方法。Collections是一个工具类。它包含各种有关集合操作的方法。
六、编程题
1、参考答案
import java.util.*; public class Test01 {
public static void main(String[] args) {
ArrayList list = new ArrayList();
}
}
for(int i = 0; i < 10; i++) { }
Iterator it = list.iterator(); while(it.hasNext()) { }
list.add(\
Object obj = it.next(); System.out.println(obj);
2、参考答案
import java.util.*; public class Test02 { }
class Person{
String name; int age;
public Person(String name, int age) { }
public int hashCode() { return name.hashCode(); }
public boolean equals(Object obj) {
if (this == obj)
return true; return false; if (obj == null)
Person other = (Person) obj; super();
this.name = name; this.age = age;
public static void main(String[] args) { }
HashSet hashSet = new HashSet(); Person p1 = new Person(\Person p2 = new Person(\Person p3 = new Person(\hashSet.add(p1); hashSet.add(p2); hashSet.add(p3);
for(Object obj:hashSet){ }
Person p=(Person)obj;
System.out.println(p.name+\
}
}
return other.name.equals(this.name);
3、参考答案
import java.util.*; public class Test03 { }
class MyComparator implements Comparator { }
public int compare(Object obj1, Object obj2) { }
String ele1 = (String) obj1; String ele2 = (String) obj2; return ele2.compareTo(ele1);
public static void main(String[] args) { }
TreeMap map = new TreeMap(new MyComparator()); map.put(\map.put(\map.put(\map.put(\map.put(\
for (Object key : map.keySet()) { }
System.out.println(key + \
第8章 IO(输入输出)
一、填空题
1、 字节流、字符流 2、 File、java.io
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 四、程序填空题