只有一个变量的多个循环

时间:2017-03-23 07:02:23

标签: java tostring

所以我超级卡住..我正在做我的toString()方法,它需要显示一个条形图,其中星星与成绩数量相关。离。

5 As,3 Bs,3 Cs,2 Ds,1 F,

*****甲

***乙

*** C

** d

* F

我的老师给了我一个开始,但除了连接已经给出的单个变量之外我不知道该怎么做。请记住,我仍在学习,并没有学习其他方法,如字符串构建或数组

public class GradeDistribution {
private int mNumberAs;
private int mNumberBs;
private int mNumberCs;
private int mNumberDs;
private int mNumberFs;

public GradeDistribution(int numberOfAs, int numberOfBs,
                            int numberOfCs, int numberOfDs,
                            int numberOfFs)
{
    mNumberAs = numberOfAs;
    mNumberBs = numberOfBs;
    mNumberCs = numberOfCs;
    mNumberDs = numberOfDs;
    mNumberFs = numberOfFs;

}

public GradeDistribution()
    {
        mNumberAs = 0;
        mNumberBs = 0;
        mNumberCs = 0;
        mNumberDs = 0;
        mNumberFs = 0;
    }
public void setAllGrades(int A,int B, int C, int D, int F)
{
    mNumberAs = A;
    mNumberBs = B;
    mNumberCs = C;
    mNumberDs = D;
    mNumberFs = F;
}
public void setNumberAs( int A)
{
    mNumberAs = A;
}
public void setNumberBs(int B)
{
    mNumberBs = B;
}
public void setNumberCs(int C)
{
    mNumberCs = C;
}
public void setNumberDs(int D)
{
    mNumberDs = D;
}
public void setNumberFs(int F)
{
        mNumberFs = F;
}
public int getNumberOfGrades()
{
    return mNumberAs + mNumberBs + mNumberCs + mNumberDs + mNumberFs;
}
public int getPercentAs()
{   double totalGrade = mNumberAs + mNumberBs + mNumberCs + mNumberDs + mNumberFs;
    double averageAs = (mNumberAs / totalGrade * 100);
    return (int)averageAs;
}
public int getPercentBs()
{
    double totalGrade =  mNumberAs + mNumberBs + mNumberCs + mNumberDs +      mNumberFs;
    double averageBs = (mNumberBs / totalGrade * 100);
    return (int)averageBs;
}
public int getPercentCs()
{
    double totalGrade =  mNumberAs + mNumberBs + mNumberCs + mNumberDs + mNumberFs;
    double averageCs = (mNumberCs / totalGrade * 100);
    return (int) averageCs;
}
public int getPercentDs()
{
    double totalGrade =  mNumberAs + mNumberBs + mNumberCs + mNumberDs + mNumberFs;
    double averageDs = (mNumberDs / totalGrade * 100);
    return (int) averageDs;
}
public int getPercentFs()
{
    double totalGrade =  mNumberAs + mNumberBs + mNumberCs + mNumberDs +     mNumberFs;
    double averageFs = (mNumberFs / totalGrade * 100);
    return (int)averageFs;
}
public String toString()
{
    String output = "";
    for(int a = 1; a <= mNumberAs; a++)
    {

}
}
}

1 个答案:

答案 0 :(得分:0)

在你的for循环中,你正在迭代As给出的数量。因此,您可以在迭代时将*附加到字符串中。 output = output + "*";完成循环后,添加A和新行\n,然后对B,C等执行相同操作:

String output = "";
for(int a = 1; a <= mNumberAs; a++) {
    output = output + "*";
}

output = output + "A\n";

// do the same for the number of Bs, Cs, etc