我看的中文版的,页面也就是按中文版来说了哈1,首先是329页,英文大约是507页,Collection1.java这个程序,其中有
String[] str = (String[])c.toArray(new String[1]);
这样一句,不大明白toArray里面加参数是为什么
自己看了看JDK5.0 Document,里面关于ArrayList.toArray(T[] a)的参数是这样说的:
Parameters:
a - the array into which the elements of the list are to be stored, if it is big enough; otherwise, a new array of the same runtime type is allocated for this purpose. 
既然这样,这个参数跟返回值的意义不就是一样的吗?同样在这个程序里还出现了不带参数的调用的。
还有就是为什么Bruce在这里创建的String数组的长度是1?2,330页,还是这个程序,Bruce创建c3的时候有一句:
Collection c3 = ((List)c).subList(3,5);
我想问的是,从c里面取得3to5是"ten","eleven","BURUNDI"这三个吗?3,在339页,英文应该是519页吧,大概。for循环里面有如下语句:
if(i == 3) low = it.next();
但是从后面输出的结果来看,这里应该i==2吧?4,349页,英文书533-534, SlowMap.java这个程序里面用到的MPair 哪里来的?MPair.java里面并没有把MPair类放进哪个包里啊?还有就是这个程序里面定义entryset方法的目的是什么?没有用到啊?5,350页, 中文内容的第二段,最后说道:“它的问题在于对‘键’的查询,由于没有排序,所以就只能使用简单的线性查询,而这是最慢的查询方式”
我想问一下这里说道查询是指什么?程序段里哪部分用到查询呢?这个问题可能比较傻,不要责怪菜鸟哈6,358页,英文546页,程序里调用了三次的checkQueue()方法莫名其妙?这是个什么啊?7, 372页,11.14.2节,英文大概是565吧,讲到Synchronizing a Collection or Map的时候,有下面这个程序://: c11:Synchronization.java
// Using the Collections.synchronized methods.
import java.util.*;public class Synchronization {
  public static void main(String[] args) {
    Collection c =
      Collections.synchronizedCollection(new ArrayList());
    List list =
      Collections.synchronizedList(new ArrayList());
    Set s = Collections.synchronizedSet(new HashSet());
    Map m = Collections.synchronizedMap(new HashMap());
  }
} ///:~没看懂,把这几个容器里都和new出来的容器类同步了,目的是什么?8, 我自己写的最简陋的程序的问题:
import java.util.*;public class testToArray
{
public static void main(String args[])
{
List c = new ArrayList();
c.add("1");

}
}在用javac testToArray.java编译的时候提示使用了未经检验或不安全的操作
按照提示用javac testToArray.java -Xlint unchecked编译,提示如下:testToArray.java:8: 警告:[unchecked] 对作为普通类型 java.util.List 的成员的 add
(E) 的调用未经检查
                c.add("1");
                     ^
小弟不才,实在不知道这是怎么回事,望各位指教暂时就这么多吧,WeakHashMap其实没怎么看懂,以后慢慢领悟了
谢谢

解决方案 »

  1.   

    1.这个参数其实没什么大的意识,如果小了,会自动扩大,你看看.toArray()地实现就知道镇么回事了
    2。你自己做个测试,应该是一个startposition,endposition的子list
      

  2.   

    8.因为你使用了jdk1.5,所以出现如下提示
    你用unchecked编译只出现警告,说明泛型对类型有限制作用,但是可以不去理这些警告,编译没有问题的