public class AsOperator {
public static <T> T as(Object object, Class<T> targetClass) {
if (targetClass.isInstance(object)) {
return targetClass.cast(object);
}
return null;
}
public static void main(String[] args) {
Object obj = "This is a string";
// Test with matching type
String result = as(obj, String.class);
if (result != null) {
System.out.println("Casted object: " + result);
} else {
System.out.println("Casting failed");
}
// Test with non-matching type
Integer integerResult = as(obj, Integer.class);
if (integerResult != null) {
System.out.println("Casted object: " + integerResult);
} else {
System.out.println("Casting failed");
}
}
}
Java 实现一个类似 C# as 运算符的效果
于 2023-07-13 12:07:58 首次发布
该代码示例展示了一个公共静态方法`as`,它接受一个对象和目标类类型,如果对象可以转换为目标类,就使用`Class.cast()`进行转换。在`main`方法中,分别尝试将字符串对象转换为字符串和整数,展示了类型匹配和不匹配的情况。
摘要由CSDN通过智能技术生成