如何将空值传递给java中的对象[]变量

问题描述:

我有一个变量声明为public Object[] institutes ;现在我需要将空值传递给此institutes变量。我如何做到这一点如何将空值传递给java中的对象[]变量

+2

不知道你在问什么或试图做什么。 *将空值传递给变量*是什么意思? – tnw

+0

你的意思是初始化数组的所有元素为null或数组本身为null还是长度为0的数组? – brso05

+0

对不起,我想我得到了答案,我需要传递空值,所以我写了“新的对象[0]'给我空值。 – aradhya

要声明institutes空:

public Object[] institutes = new Object[0]; 

请注意,此声明institutes为空数组,这是从不同模式有它null

如下

public Object[] institutes = {}; 

假设你想分配一个变量(因为你不能什么传递给一个变量反正),并假设由“空你可以做一个简单的赋值操作“你的意思是零长度的非空数组赋值很简单:然而

class ClassWithInstitutes { 
    public Object[] institutes; 
} 
... 
ClassWithInstitutes obj = new ClassWithInstitutes(); 
obj.institutes = new Object[0]; 

注意的是,设置公共变量(甚至使公共变量分配)是一种不好的做法。你会用一双专用的getter和setter的更好:

class ClassWithInstitutes { 
    private Object[] institutes = new Object[0]; 
    public Object[] getInstitutes() { 
     return institutes; 
    } 
    public void setInstitutes(Object[] val) { 
     if (val == null) { 
      throw new IllegalArgumentException(val); 
     } 
     // Consider making a defensive copy here. 
     institutes = val; 
    } 
} 

这是不理想的,因为吸气允许阵列,这是可变的直接访问。然而,这比允许不受保护地访问公共变量要好,因为它可以让您控制变量中设置的内容。

如果你想传递一个空* Object类型的数组,你可以初始化它是这样的:

public Object[] institutes = new Object[0]; 

你的问题不是很清楚。如果你能提供洞察力,那么你的意思会很棒。

我不确定你的意思是空的,我想你有两个主要选项。 Null and new object