描述
茵茵很喜欢研究车牌号码,从车牌号码上可以看出号码注册的早晚,据研究发现,车牌号码是按字典序发放的,现在她收集了很多车牌号码,请你设计程序帮她判断注册较早的号码。车牌号码由5个字母或数字组成
-
输入
-
第一行是n,代表有n组数据,第二行是m,以下m行是m个车牌号码
其中n<100,m<1000
输出
- 输出注册较早的车牌号 样例输入
-
1 4 AA100 aa100 0o2r4 ye2er
样例输出
-
0o2r4
-
这里调用了String的compareTo方法很简单,鉴于我的刨根问底精神,我看了看 compareTo方法的源码,就是两个字符串逐个比较的,这样就比较清晰了,这里我附上源码:package MainTest; import java.util.*; public class Main { public static void main(String[] args) { Scanner in= new Scanner(System.in); int k=in.nextInt(); while(k-->0){ int m=in.nextInt(); String[] s=new String[m]; s[0]=in.next(); for (int i = 1; i <m; i++) { s[i]=in.next(); if(s[i].compareTo(s[0])<0) s[0]=s[i]; } System.out.println(s[0]); } } }
-
public int compareTo(String anotherString) {
int len1 = value.length;
int len2 = anotherString.value.length;
int lim = Math.min(len1, len2);
char v1[] = value;
char v2[] = anotherString.value;
int k = 0;
while (k < lim) {
char c1 = v1[k];
char c2 = v2[k];
if (c1 != c2) {
return c1 - c2;} -
k++;
}
return len1 - len2;
}
这下就很明了了,以后比较字符串就用这个