下拉列表中出现的值的顺序发生变化

时间:2011-10-20 07:28:40

标签: java string sorting arraylist stringbuffer

我有一个值列表,按数字和字母顺序进行排序。例如。列表具有值(以相同顺序),如 1,2,5,10,100,A012B,AB,XY,Z

我使用for循环将此列表添加到StringBuffer并将Stringbuffer对象作为字符串(通过sbf.toString())返回,因为我的方法只能返回String类型(根据方法声明)。我无法更改返回类型(它必须是一个String,因为我的框架只接受String类型)。

返回的值显示在下拉列表中。但是值的顺序会发生变化并显示为 1,10,100,2,5,A012B,AB,XY,Z 。我希望值的显示方式与它们在arraylist中的显示方式相同。你能帮忙吗?

1 个答案:

答案 0 :(得分:2)

将数据添加到下拉列表的代码似乎是对数据进行排序。你如何创建下拉列表?这是Swing应用程序还是Web应用程序?在某些Web框架中,下拉列表会自动排序,在这种情况下您必须禁用该默认值。

StringBuffer不会自动对字符串进行排序,因此不会出现问题。要对此进行测试,请在将StringBuffer内容添加到列表之前将其输出到命令行。