How do I add fractions into the arraylist and then retrieve and store them in a local variable?
Question:
Create a second class that can store a number of Fraction class objects using an ArrayList of Fractions. This class should have a method called demo that does the following in order:
- Create four fraction objects (1/4, 2/4, 3/4, 4/1) and store them in the collection.
- Retrieves the first fraction from the list and store in a local variable called fraction1. Retrieves the second fraction from list and store in a local variable called fraction2.
- Also have to call the equal method of fraction1 passing fraction2 as an argument.
Multiplies fraction1 times fraction2
Inverts fraction1
Uses
toStringto print out fraction1.
I'm confused and primary need help on the first two problems. I want to try it out on my own but I just need a little push on what or how to do it.
So far I have-
Second Class:
import java.util.ArrayList;
public class MyFractions
{
private ArrayList<Fraction> fractions;
public MyFractions()
{
ArrayList<Fraction> fractions = new ArrayList<Fraction>();
}
public void demo()
{
fractions.add();
}
}
Fraction Class:
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;
}
}