类rui定义如下:
public class rui{
   private int a,b;
   public rui(){}
   public void setAB(int a,int b){
   this.a=a;
   this.b=b;
   }
   public int getA(){
   return a;
   }
   public int getB(){
   return b;
     public static void main(String[] args) {}
   }
创建含有10个元素的rui数组ob使其满足以下条件 并向下面这样输出:
条件:
      ob[0].a=1;
      ob[0].b=2;
      ob[i+1].a=ob[i].a+ob[i].b;
      ob[i+1].a=ob[i].a*ob[i].b;
结果 提示:
ob[0].a=1,ob[0].b=2
ob[1].a=3,ob[1].b=2
ob[2].a=5,ob[2].b=6
ob[3].a=11,ob[3].b=30求高手解答一下这题

解决方案 »

  1.   

    你敲错了吧:
        ob[0].a=1;
        ob[0].b=2;
        ob[i+1].a=ob[i].a+ob[i].b;
        ob[i+1].b=ob[i].a*ob[i].b; 
    这样:
    ob[0].a=1,ob[0].b=2;//很明显,以下则为迭代过程:
    ob[1].a=1+2=3;ob[1].b=1*2=2;
    ob[2].a=3+2=5;ob[2].b=3*2=6;
    ob[3].a=5+6=11;ob[3].b=5*6=30
      

  2.   


    public class Test{ 
      private long a,b; 
      public Test(){} 
      public void setAB(long a,long b){ 
      this.a=a; 
      this.b=b; 
      } 
      public long getA(){ 
      return a; 
      } 
      public long getB(){ 
      return b; 
      }
        public static void main(String[] args) {
         Test [] t1=new Test[5];
         for(int i=0;i<t1.length;i++){
         t1[i]=new Test();
         }
         t1[0].setAB(1, 2);
         for(int i=1;i<t1.length;i++){
         t1[i].setAB((t1[i-1].getA())+(t1[i-1].getB()), t1[i-1].getA()*t1[i-1].getB());
         }
         for(int i=0;i<t1.length;i++){
         System.out.println("t1["+i+"]:a:"+t1[i].getA()+"  b:"+t1[i].getB());
         }
        } 
      }