我有返回名称和值的列表,我有兴趣通过检查返回列表是否按字母顺序排列来创建 Junit 测试。到目前为止,我已经这样做了,但我得到的结果总是= TRUE,因为我相信它正在考虑“MINTS ......”。所以我的目标是从列表中删除 MINTS ( Name ) 并检查列表 ( VALUE ) 的顺序。
来自表格的列表
联合代码
public void test() throws Exception
{
DataObj dao = new DataObj();
HashMap<String, Object> params = new HashMap<String, Object>();
params.put( "code", 100 );
List<?> values = dao.getDataObj( params, conn );
String previous = "";
boolean result = false;
for ( final Object vCurrent : values )
{
String current = vCurrent.toString();
if ( current.compareTo( previous ) < 0 )
{
result = false;
previous = current;
}
result = true;
}
}
如果我对值(value)观进行打印,我会得到类似“mints Dave mints Jackie mints Derek .....”
最佳答案
您总是在循环的每次迭代结束时设置 result = true
。
你可以这样做:
String previous = "";
boolean result = true;
for ( final Object vCurrent : values )
{
String current = vCurrent.getValue();
if ( current.compareTo( previous ) < 0 )
{
result = false;
break;
}
}
关于java - 从列表中删除字符串并在java中排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14783159/