繁体   English   中英

Java-从String或int获取一个Integer值-避免instanceof

[英]Java - get an Integer value from String or int - avoiding instanceof

getInt方法是否有单行实现?

如果不是-是否可以不使用instanceof来实现呢?

public class ParseInt {
    public static void main(String[] args) {
        Object intArr[] = { "131", 232, new Integer(333) };

        for (Object intObj : intArr) {
            System.out.println(getInt(intObj));
        }
    }

    private static int getInt(Object obj) {
        return // ???
    }
}

使用Integer.valueOf(obj.toString)

private static int getInt(Object obj) {
    return Integer.valueOf(obj.toString());
}

这将适用于您的对象数组

尝试类似...

private static int getInt(Object obj) {
    if (obj instanceof String) {
        return Integer.parseInt((String) obj);
    } else if(obj instanceof Integer){
        return (Integer) obj;
    } else{
        return 0; // or else whatever you want
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM