一、需求如下图
二、需求实现
package test; import java.util.Scanner; import java.util.regex.Pattern; public class ScannerTest { public static boolean isInteger(String str) { Pattern pattern = Pattern.compile("^[-\+]?[\d]*$"); return pattern.matcher(str).matches(); } public static void main(String[] args) { int min = 0; int max = 0 ; String str; int num = 0; System.out.println("请输入一个整数(输入0结束):"); Scanner scanner=new Scanner(System.in); str=scanner.nextLine(); if(isInteger(str)){ num=Integer.parseInt(str); if(num==0){ System.out.println("你选择了结束!"); return; }else{ //初始化min、max min=num; max=num; do{ System.out.println("请输入一个整数(输入0结束):"); scanner=new Scanner(System.in); num=scanner.nextInt(); if(num==0){ break; }else if(num<min){ min=num; }else if(num>max){ max=num; } }while(num!=0); System.out.println("最大值是:"+max+" 最小值是:"+min); } }else{ System.out.println("输入的是非整数!"); } } }
三、结果截图:
当输入0时:
当输入非整数时:
当输入整数时: