package day02.exe;
/**
* 正则表达式的使用:
* 从控制台输入一个字符串,如果是整数就输出整数
* 如果是小数就输出小数,输出其他字符则显示数据
* 格式错误.
*/
import java.util.Scanner;
public class Exe04 {
public static void main(String[] args) {
System.out.println("请输入一个数字:");
Scanner scan = new Scanner(System.in);
String str = scan.nextLine();
/*
* 问题的关键是写出正确的正则表达式
*/
String regex = "[0-9]*[\\.]?\\d*";
// System.out.println(regex);
if(str.matches(regex)){
if(str.contains(".")){
double d = Double.parseDouble(str);
System.out.println("这是一个小数:"+d);
}else{
int i = Integer.parseInt(str);
System.out.println("这是一个整数:"+i);
}
}else{
System.out.println("数字格式不正确!");
}
}
}