今天写代码的时候突然想到要怎么来判断整数,然后通过判断是否是整数来处理相关的操作。
开始想到了几个方法,比如百度到的 x(int) instanceof Integer,但是这样的话程序会报错,还有一个问题就是我开始的时候把Scanner输入时直接输入的整数,这样的话还没到判断就直接运行异常,显然是不对的。好了,废话不多说,直接上代码:

package com.java;

import java.util.Scanner;

/**
 * 实现一个数字加密器,加密规则是: 加密结果 = (整数*10+5)/2 + 3.14159 加密结果仍为一整数
 *
 * @author TDing
 */
public class DigitalDevice {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        System.out.println("请输入一个整数:");
        String num = s.next();
        boolean results=num.matches("[0-9]+$");   

   //这里用到了匹配的方法,就是判断你输入的数字是不是只包含 0-9 这几个数字,如果还有其他的则执行else里面的代码
        if (results) {
            int nums = Integer.parseInt(num);
            int result = (int) ((nums * 10 + 5) / 2 + 3.14159);
            System.out.println(result);
        } else {
            System.out.println("您输入的数字有误!");
        }
    }
}

注:这里我输入的时候使用的String,判断的时候再转为int型,这样就可以避免输入时出错了。

posted on 2016-05-05 15:21  依米妮  阅读(2626)  评论(0编辑  收藏  举报