我想创建一个可以接受任何传入变量的函数,无论类型如何(int
, double
, String
或其他对象),然后可能确定变量的类型并对该类型进行有条件的操作。
我怎样才能做到这一点?
重载是最推荐的选项,大多数时候您不需要接受任何类型变量的函数。
但是如果一个函数接受任何Object
?您可能需要使用instanceof
并根据数据类型处理它们。
的用法instanceof
: [Name of object instance] instanceof [Name of object type to match]
instanceof
返回一个boolean
: true
当且仅当对象实例的类型与要匹配的类型匹配时。
接受“任何变量类型”的函数或方法的一个示例:
public static void method(Object obj) {
if (obj instanceof String)
System.out.println("I am a String!");
if (obj instanceof Integer)
System.out.println("I am an Integer!");
// Similarly for other types of Object
if (obj instanceof ... )
...
// The .getClass() is for any Object
System.out.println(obj.getClass());
}
请注意,不建议创建接受任何类型变量的函数。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)