Java控制台输入字符串及字符串比较

需求描述:茵茵很喜欢研究车牌号码,从车牌号码上可以看出号码注册的早晚,据研究发现,车牌号码是按字典序发放的,现在她收集了很多车牌号码,请你设计程序帮她判断注册较早的号码。车牌号码由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.length;i++){
			strs[i]=scanner.next();
		}
		
		for(int i=0;i<strs.length;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.length;i++){
			strs[i]=scanner.next();
		}
		
		Arrays.sort(strs);
		
		//输出
		/*
		for(int i=0;i<strs.length;i++){
			System.out.println(strs[i]);
		}*/
		System.out.println(strs[0]);
	}
}

  运行如图:

原文地址:https://www.cnblogs.com/mengxinrenyu/p/7518888.html