首页 > 代码库 > 自定义的一个数据输入类
自定义的一个数据输入类
package xinhuiji_day07;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.text.SimpleDateFormat;
import java.util.Date;
public class InputData {
private BufferedReader buf = null;
public InputData(){
this.buf = new BufferedReader(new InputStreamReader(System.in));
}
//获得键盘输入
public String getString(String info){
String temp = null;
System.out.print(info);
try {
temp = this.buf.readLine();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return temp;
}
//转换成int
public int getInt(String info,String err){
int temp = 0;
String str = null;
boolean flag = true;
while(flag){
str = this.getString(info);
if(str.matches("^\\d+$")){
temp = Integer.parseInt(str);
flag = false; //这里使用flag作用是跳出循环
}else{
System.out.println("err");
}
}
return temp;
}
//转换成float
public float getFloat(String info,String err){
float temp = 0;
String str = null;
boolean flag = true;
while(flag){
str = this.getString(info);
if(str.matches("^\\d+.?\\d+$")){
temp = Float.parseFloat(str);
flag = false; //这里使用flag作用是跳出循环
}else{
System.out.println("err");
}
}
return temp;
}
//转换成Date
public Date getDate(String info,String err){
Date temp = null;
String str = null;
boolean flag = true;
while(flag){
str = this.getString(info);
if(str.matches("^\\d{4}-\\d{2}-\\d{2}$")){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
temp = sdf.parse(str);
} catch (Exception e) {
// TODO: handle exception
}
flag = false; //这里使用flag作用是跳出循环
}else{
System.out.println("err");
}
}
return temp;
}
}