需求描述:茵茵很喜欢研究车牌号码,从车牌号码上可以看出号码注册的早晚,据研究发现,车牌号码是按字典序发放的,现在她收集了很多车牌号码,请你设计程序帮她判断注册较早的号码。车牌号码由5个字母或数字组成。
首先解决输入的问题:先输入一个数字,表示输入的字符串个数,我们接下来再用字符串数组接受输入。
Scanner scanner=new Scanner(System.in);
Scanner是JDK提供的java.util工具包下的一个类,此类为我们提供了很多可用的方法。
scanner扫描器可以用作控制台输入
我们输入一行字符串
String str=scanner.next(); //需要从控制台输入
System.out.println(str);
此时我们只能输入一行字符串。
如果我们根据输入的整数n动态的决定输入字符串的个数,那么我们就可以用字符串数组循环输入。
package com.orac.zibo;
import java.util.Scanner;
public class GbJ {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
/*
String str=scanner.next(); //需要从控制台输入
System.out.println(str);
*/
System.out.print("请输入车牌号码的数量:");
int n=scanner.nextInt(); //需要从控制台输入整数
String[] strs=new String[n];
for(int i=0;i
strs[i]=scanner.next();
}
for(int i=0;i
System.out.println(strs[i]);
}
}
}
之后我们的任务就是选出最早的车牌号,我们可以先对字符串数组进行排序。
我们有需要使用JDK给我们提供的工具类,import java.util.Arrays;
java.util下有一个Arrays工具类。Arrays下面有一个方法sort()可以对数组进行排序。
如果是字符串数组,那么排序是根据Unicode编码进行的排序。
package com.orac.zibo;
import java.util.Arrays;
import java.util.Scanner;
public class GbJ {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
/*
String str=scanner.next(); //需要从控制台输入
System.out.println(str);
*/
System.out.print("请输入车牌号码的数量:");
int n=scanner.nextInt(); //需要从控制台输入整数
String[] strs=new String[n];
for(int i=0;i
strs[i]=scanner.next();
}
Arrays.sort(strs);
//输出
/*
for(int i=0;i
System.out.println(strs[i]);
}*/
System.out.println(strs[0]);
}
}
运行如图: