【发布时间】:2017-03-31 08:14:33
【问题描述】:
我对编程很陌生。我为大学的编程课程做的以下项目。我们编写了一个迷你银行程序,每个客户都应该得到一个像“KU345-32”这样的ID。我使用以下代码生成这些 ID:
int customerID = ThreadLocalRandom.current().nextInt(1, 100000);
char firstChar = (char)ThreadLocalRandom.current().nextInt(65, 91);
char secondChar = (char)ThreadLocalRandom.current().nextInt(65, 91);
custID= "" + firstChar + secondChar + (formatCID.format(customerID)).substring(0, 3) + "-" + (formatCID.format(customerID)).substring(3, 5);
此银行程序的一项任务是先按字母顺序对这些 ID 进行排序,然后按数字排序:
AT234-12
BA123-08
等等。 但这怎么可能?对我来说删除 - 到处都没有问题,但我不知道如何比较或使用哪个界面。写一个自己的可比对我来说可能太多了。我期待任何帮助:)
【问题讨论】:
-
如果在 Java API 中使用 Collection,您需要实现自定义
Comparator,请参阅 stackoverflow.com/a/5805621/7001059 -
避免在 Stack Overflow 上提问“我该怎么做?”相反,发布您已经尝试过的内容,以及为什么它不起作用。快速的 Google 搜索将为您提供大量有关您需要的信息。
标签: java sorting collections linked-list comparable