Java “为什么?”;无法返回无效结果";当日历以某种方式使用时会发生什么?
为什么Java “为什么?”;无法返回无效结果";当日历以某种方式使用时会发生什么?,java,Java,为什么getCal()可以工作,但是getCal2()不能?在Eclipse中,我得到一个错误,说“无法返回无效结果” 因为中的方法setTimeInMillis(毫秒)返回void(nothing) 如果您希望返回日历,您可以执行以下操作: public Calendar getCal2(long milliseconds) { Calendar cal = Calendar.getInstance(); cal.setTimeInMillis(milliseconds);
getCal()
可以工作,但是getCal2()
不能?在Eclipse中,我得到一个错误,说“无法返回无效结果”
因为中的方法
setTimeInMillis(毫秒)
返回void(nothing)
如果您希望返回日历,您可以执行以下操作:
public Calendar getCal2(long milliseconds)
{
Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(milliseconds);
return cal;
}
也可以创建一个返回void的方法:
public void getCal2(long milliseconds)
{
Calendar.getInstance().setTimeInMillis(milliseconds);
}
如果一个方法返回void,这意味着您不能将任何变量设置为该方法返回的值
a_变量=someMethodThatReturnsVoid()
将给出编译时错误,因为该方法不返回任何内容。因为该方法setTimeInMillis(毫秒)
在返回空值(nothing)时返回空值
如果您希望返回日历,您可以执行以下操作:
public Calendar getCal2(long milliseconds)
{
Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(milliseconds);
return cal;
}
也可以创建一个返回void的方法:
public void getCal2(long milliseconds)
{
Calendar.getInstance().setTimeInMillis(milliseconds);
}
如果一个方法返回void,这意味着您不能将任何变量设置为该方法返回的值
a_变量=someMethodThatReturnsVoid()
将给出编译时错误,因为该方法不返回任何内容。发生这种情况是因为该方法返回类型为void
这是该方法的签名
public void setTimeInMillis(long millis)
取另一个日历
并设置时间,然后返回该日历
Calendar anotherCalader= Calendar.getInstance();
anotherCalader.setTimeInMillis(timeInMillies);
return anotherCalader;
发生这种情况是因为方法返回类型是
void
这是该方法的签名
public void setTimeInMillis(long millis)
取另一个日历
并设置时间,然后返回该日历
Calendar anotherCalader= Calendar.getInstance();
anotherCalader.setTimeInMillis(timeInMillies);
return anotherCalader;