In Google Guava (Java), how to bulk set values for ArrayTable?

后端 未结 2 670
忘掉有多难
忘掉有多难 2021-01-23 23:11

I have a two dimensional array of data, e.g., V[][], that I want to bulk set on an ArrayTable instance.

Must I repeatedly call ArrayTable.put(R rowKey

2条回答
  •  遇见更好的自我
    2021-01-23 23:46

    There is not such a constructor.

    Your best option is:

    ArrayTable table = ArrayTable.create(
        ContiguousSet.create(Range.closedOpen(0, v.length), 
                           DiscreteDomain.integers()), 
        ContiguousSet.create(Range.closedOpen(0, v[0].length), 
                           DiscreteDomain.integers()));
    for(int i = 0 ; i < v.length ; ++i) {
        for(int j = 0 ; j < v[i].length ; ++j) {
            table.set(i, j, v[i][j]);
        }
    }
    

提交回复
热议问题