import java.math.BigInteger;
import java.until.*;
public class factorial
 {
   protected static ArrayList table=new Arraylist();
   static
    {
      table.add(BIgInteger.valueof());
    }
    .....   以上一段程序的代码,请问各位高手,table.add(参数是什么?)以及它是什么意思?这个程序中BIgINteger.valueof()这个参数是什么意思?
   我查了一下手册1.5的(我用的软件是1.4.2),BIgINteger方法valueof()返回其值等于long的值的bigInteger.
   在ArrayList的方法
   add(int index,object element)是在指定位置插入指定元素.
   add(Object o)是在当前列表末尾插入指定元素.
   Arraylist()指的是空列表,容量为10;
    
  这些方法好像都不符合上述语法中使用要求,请问各位高手,我哪儿理解错了?还是查找的不对?能分别给解释一下吗?

解决方案 »

  1.   

    BigInteger 是 Object的子类,所以可以对应 ArrayList的add(Object o)方法
    BigInteger.valueOf(long val)是用long去构造一个BigInteger的对象
      

  2.   

    首先谢谢朋友,你帮了多次了,再次谢谢,再问一下 table.add(BIgInteger.valueof(1))是什么意思?书上说是0!=1,一个初始化数据.我不明白?
      

  3.   

    BIgINteger方法valueof()  参数是long ,返回一个BigInteger对象; add(Object o)是在当前列表末尾插入指定元素.     table.add(BIgInteger.valueof());  你这句等同于    BigInteger a=BigInteger.valueof(1);
                   table.add(a);
    所以书上解释得没错
      

  4.   

    朋友你好,书上说 Arraylist()指的是空列表,容量为10;add(Object o)是在当前列表末尾插入指定元素,那么该怎样理解 BigInteger a=BigInteger.valueof(1); table.add(a); 呢?
      

  5.   

    空列表是指这个列表里面目前没有元素,也就是 size是0。
    容量为10,是说目前的容量够放10个元素进去。但是ArrayList会自动增长容量,如果需要的话
    BigInteger a=BigInteger.valueof(1); table.add(a);就是把a放到了table列表的第一位。
    但是容量目前应该没有达到增长的条件,应该还是10,但由于已经放了一个,所以不增长容量的话还可以放9个
      

  6.   


    Object o =BIgInteger.valueof()); 
    table.add(o); 
    这样不和你那一样了么
      

  7.   

    table.add(参数是什么?) 参数可以是int ,String,int [],是一个对象