Java undefined object

标签 java object undefined

我得到了一个数组列表和一个将对象添加到数组列表的方法。目前我使用重载方法来区分不同类型的对象。有没有办法使用 undefined object 作为方法的参数并在方法内部区分它是什么类型的对象?

最佳答案

通过“ undefined object 作为参数”,我假设您的意思是您正在寻找编写一个不在函数声明中指定对象类型的函数,从而允许您只有一个函数。

这可以通过泛型来完成。

而不是:

static void func(String str)
{
  System.out.println("The string is: "+str);
}
static void func(Integer integer)
{
  System.out.println("The integer is: "+integer);
}

你可以拥有:

static <T> void func(T value)
{
  if (value instanceof Integer)
    System.out.println("The integer is: "+value);
  else if (value instanceof String)
    System.out.println("The string is: "+value);
  else
     System.out.println("Type not supported!! - "+value.getClass());
}

测试:

func("abc"); // The string is: abc
func(3);     // The integer is: 3
func(3.0);   // Type not supported!! - class java.lang.Double

参见Java generics了解更多信息。

关于Java undefined object ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19592722/

相关文章:

外部共享资源(智能卡)的 Java 并发模式

java - 连续排序数组

JavaScript:变量未定义

exception - 未定义的 ARM 异常的原因是什么?

java - 我可以强制在 Spring 中包含至少两个 header 之一吗?

java - 如何在 X509TrustManager 中启用 OCSP?

java - Cookie CsrfTokenRepository.withHttpOnlyFalse() 做什么以及何时使用它?

object - 如何使用在 SystemVerilog 中对其进行操作的方法获取实例的名称?

javascript - 如果数组的 ID 与其他数组对象相同,如何删除该数组的对象

c++ - 在类中访问结构对象变量 - C++