在java中使用for循环回车(初学者)

时间:2013-11-19 00:16:14

标签: java junit

我正在尝试制作像

这样的直方图
####################
################
##########################
############

这是我的代码

public String generateHistogramA(List<Thingy>things)
{     
    String a="";
    String b="";
    for(int i=0;i<things.size();i++)
    {
        a="";
        for(int j=0;j<=things.get(i).count;j++)
        {
            a=a+"#";
        }
        b+=a+System.getProperty("line.separator");
    }
    System.out.print(b);

    return b;
}

我有一个Junit测试如下:

@Test
public void testGenerateHistogramA() {
    System.out.println("generateHistogramA");
    Histogram instance = new Histogram();
    String expResult = "##############################################################################################################"+System.getProperty("line.separator")+"####################"+System.getProperty("line.separator")+
            "########################################"+System.getProperty("line.separator")+
            "################################################################################################################################################################" +System.getProperty("line.separator")+
            "################################################################################"+System.getProperty("line.separator");
    String result = instance.generateHistogramA(things);
    assertEquals(expResult, result);
}

当我在main中使用该方法时它与Junit测试具有相同的结果...当我运行它时,测试只是没有通过..我不知道它有什么问题.. 请..如果有人知道发生了什么...... 谢谢!

测试结果如下:         junit.framework.AssertionFailedError:expected:&lt; ... #################### [         ####################         ########################################   ################################################## ################################################## ################################################## ##########         ] #################### ...&GT;但是:&lt; ... ######################         #####################         #########################################      ################################################## ################################################## ################################################## ###########         #] #################### ...&GT;

1 个答案:

答案 0 :(得分:0)

同样值得思考......

这更接近于我将如何做到这一点。找出为什么有机会学习东西; - )

public String generateHistogramA(List<Thingy> things)
{
    String newLine=System.getProperty("line.separator");
    StringBuilder sb=new StringBuilder();
    for(Thingy thingy: things)
    {
        for(int j=0, count=thingy.count; j<count; j++) sb.append('#');
        sb.append(newLine);
    }
    return sb.toString();
}