public int userCompare(String s1, int i1, String s2, int i2){
String[] alphabety = {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"};
String[] firstThing = s1.split("(?!^)");
String[] secondThing = s2.split("(?!^)");
}
字符串
如何完成以下操作:
创建一个名为userCompare的方法,该方法将根据以下内容返回-1,1或0:我们有两个用户的数据,A和B,每个用户都有一个String名称和一个int id。目标是对用户进行排序。如果A在B之前,则返回-1,如果A在B之后,则返回1,如果它们相同,则返回0。首先按字符串名称排序,如果名字相同,则按身份证号码查找。
2条答案
按热度按时间p8ekf7hl1#
我会单独比较每个分量,然后使用
signum
严格得到1
,-1
或0
。字符串
旁注-对于Java中的排序,你不需要严格返回
1
,-1
或0
,你可以只返回一个任意的正,负或零值。换句话说,signum
的使用是有问题的,但不是严格要求排序。o2g1uqev2#
我会在这里使用 String#compareTo 和 * String #compare* 方法。
字符串
如果您希望实现实际的比较例程,请查看这些方法的 * 源代码 *。
对于 String,它只是 bytes 的遍历。
这里使用 StringLatin1#compareTo 方法。
型
而且,对于一个 *,它只是一个 * 关系 * 和 * 相等 * 的操作。
型