public static void main(String[] args) throws ParseException { Scanner scanner = new Scanner(System.in);//实例化一个输入扫描器 System.out.println("请输入一串数字"); String str = scanner.next(); resove(str);//调用设计的方法 }
public static void resove(String string){ boolean flag = false;// for (int i = 0; i < string.length(); i++) { if (string.charAt(i) == '.') {//判断是字符串中是否包含小数点(是否是小数) double num = Double.valueOf(string); System.out.println(num*5); flag = true; break; }else if((int)string.charAt(i) < 47 || (int)string.charAt(i) > 57){//转换为unicode判断出与字符不是数字 System.out.println("您输入的数不是数字!!!");break; } } if (flag){}else{//是数字但不包含小数点 int num = change(string);//调用方法来转换字符串为数字//也可以直接用int num = Int.valuesOf(String); System.out.println(num*5); } }
public static int change(String str) { int sum =0; for (int i = 0; i < str.length(); i++) { int num = (int)str.charAt(i); if ( num == 48){//判断unicode编码 转换为 数字 既 unicode-48 --> 数字-0 sum += Math.pow(10,str.length() - i-1)*0;//获取位数 例如1000 = 1*10^3 }else if (num == 49){ sum += Math.pow(10,str.length() - i-1)*1; }else if (num == 50){ sum += Math.pow(10,str.length() - i-1)*2; }else if (num == 51){ sum += Math.pow(10,str.length() - i-1)*3; }else if (num == 52){ sum += Math.pow(10,str.length() - i-1)*4; }else if (num == 53){ sum += Math.pow(10,str.length() - i-1)*5; }else if (num == 54){ sum += Math.pow(10,str.length() - i-1)*6; }else if (num == 55){ sum += Math.pow(10,str.length() - i-1)*7; }else if (num == 56){ sum += Math.pow(10,str.length() - i-1)*8; }else if (num == 57){ sum += Math.pow(10,str.length() - i-1)*9; } } return sum/10; }