有没有办法为番石榴桌使用for-each结构?

Man*_*Man 6 java foreach guava

现代收藏品最清晰的编码优势之一是能够使用每个结构.我有一个简单的通用表格打印方法,然后是测试加载方法.虽然这种方法有效,但每种方法都会更加清洁.有任何想法吗?

public void printTable(Table table)
{
    int numRows = table.rowKeySet().size();
    int numCols = table.columnKeySet().size();

    for (int i=0; i<numRows; i++) 
    {
           for (int j=0; j<numCols; j++) 
           {
               System.out.print( table.get(i,j) + " " );
           }
           System.out.println();
    }
}          
Table<Integer, Integer, Integer> table = HashBasedTable.create();
void makeTable()
{
    for (int i=0; i<4; i++) 
           for (int j=0; j<6; j++)
               table.put(i, j, i*j+2);
}
Run Code Online (Sandbox Code Playgroud)

DPM*_*DPM 5

你为什么不打电话Map<R,Map<C,V>> rowMap()和迭代呢?

此外,我认为您可能更喜欢TreeBasedTable哪个帐户的行和列顺序,因为您使用行和列的整数,似乎您想要迭代这些的自然顺序.

  • 是的,这是首选的方法.迭代`map`s的`entrySet()`s. (2认同)