有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

arraylist Java存储对象

如何将分数添加到arraylist中,然后检索并存储在局部变量中

问题: 创建第二个类,该类可以使用ArrayList个分数存储多个分数类对象。该类应该有一个名为demo的方法,该方法按顺序执行以下操作:

  • 创建四个分数对象(1/4、2/4、3/4、4/1)并将其存储在 收藏
  • 从列表和存储中检索第一个分数 在一个名为fraction1的局部变量中。检索第二个分数 从列表中选择并存储在名为fraction2的局部变量中
  • 还必须调用fraction1的equal方法,并将fraction2作为参数传递
  • 将分形1乘以分形2

  • 反转分形1

  • 使用toString打印出分形1

我很困惑,在前两个问题上我需要帮助。我想自己尝试一下,但我只需要在做什么或如何做上有点推动

到目前为止我有-

二等舱:

 import java.util.ArrayList;
    public class MyFractions 
    {
    private ArrayList<Fraction> fractions;



     public MyFractions()
   {
   ArrayList<Fraction> fractions = new ArrayList<Fraction>();

   }
    public void demo()
    {
      fractions.add();
    }
  }

分数等级:

 public class Fraction
       {
           private long numerator;
          private long denominator;

public Fraction(long num, long den)   
{
   numerator=num;
   denominator=den;
}

public Fraction(long num) 
{
   numerator=num;
   denominator=1;
}


public long denominator() 
{
    return denominator;  
}

public void dividedBy(Fraction otherFraction)
{
    numerator=numerator*otherFraction.denominator;
    denominator=denominator*otherFraction.numerator;
}


public boolean  equals(long n) 
{
    return  numerator==n;
}

public boolean  equals(Fraction otherFraction) 
{
    return numerator==otherFraction.numerator && denominator==otherFraction.denominator;
}

public void negative() 
{
    numerator= -numerator;
}


public long    numerator() 
{
    return numerator;
}


public void inverse() 
{
    long temp=numerator;
    numerator=denominator;
    denominator=temp;
}

public boolean  isProper()
{
    return numerator<denominator;  
}

public void times(Fraction other) 
{
    numerator=numerator*other.numerator;
    denominator=denominator*other.denominator;
}


public double   toDouble() 
{
    return 1.0*numerator/denominator;
}

public String toString() 
{
    return numerator + "/" + denominator;
}


public boolean  isWholeNumber()
{
    return denominator==1;
}

 }

共 (2) 个答案

  1. # 1 楼答案

    如果你想将一个分数对象添加到分数数组列表中,你需要给add方法一个参数,这个参数就是你要添加的分数对象

    public void demo(Fraction obj)
    {
      fractions.add(obj);
    }
    

    现在,您可以通过执行以下操作将分数对象添加到分数数组列表中

    MyFractions mFractions = new MyFractions();
    mFractions.demo(new Fraction(1, 2)); // adds the fraction 1/2 to the arraylist
    

    下面是一个从分数集合中检索分数的方法(此方法适用于MyFracts类)

    public Fraction getFraction(int index)
    {
        return fractions.get(index);
    }
    
  2. # 2 楼答案

    要添加分数,请尝试以下操作:fractions.add(new Fraction(1, 4));

    检索派系:Fraction fraction1 = fractions.get(0),检索第一个分数