Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java列表类型参数_Java_List_Methods - Fatal编程技术网

Java列表类型参数

Java列表类型参数,java,list,methods,Java,List,Methods,我有一个这样的方法 public void setDayIntervals(Days day, List<HourRange> ranges) { int hourMask = 0; for (HourRange intRange : ranges) { int Start= intRange.getStart(); int end = intRange.getEnd(

我有一个这样的方法

public void setDayIntervals(Days day, List<HourRange> ranges) {
        int hourMask = 0;
        for (HourRange intRange : ranges) {
                     int Start= intRange.getStart();
                     int end = intRange.getEnd();
            }
        }

}

您必须创建一个
HourRange
对象并将其添加到列表中。大概是这样的:

 ranges.add(new HourRange(Start, end));
该示例假定
HourRange
具有以下构造函数:

 public HourRange(int start, int end) {
   // code to copy start and end to internal fields.
 }
(它有这个构造函数)

而不是

列表范围=null

你可能想要

List ranges=new ArrayList()


这会给你一个要添加的列表;除非您将范围初始化为列表,否则任何内容都不能进入该列表。

HourRange类的构造函数是什么样子的?这是家庭作业还是您在维护其他人的代码?对于
HourRange
:您不需要调用
super()
,因为
HourRange
只扩展
对象。您可以在
开始
结束
中添加
private
修饰符,以使类不可变(除非有人使用反射等肮脏技巧),或者在这种情况下,只需
集合。singletonList(新的HourRange…
 ranges.add(new HourRange(Start, end));
 public HourRange(int start, int end) {
   // code to copy start and end to internal fields.
 }