-1
  • 文字列配列の配列リストをループしたい。

  • これらの string 配列には 2 つの要素しかありません。ループ内で、各配列のこれら 2 つの要素を比較したいと思います。

  • これをクリーンでシンプルな方法で実行したいと思います (可能であれば、古典的な for、イテレータ クラスなどを避けます - 私はこれらの方法でこれを行う方法を知っていますが、よりクリーンな方法を探しています)。

  • for-each ループ (または for + ":") を好む

  • 私がやりたいことを示すサンプルコードを添付しています。

これを行うための最良の方法は何ですか?

ArrayList<String[]> myLst = new ArrayList<String[]>();

// the array of strings has two elements

public String getSecondField(String query)
{
    for (String[] binArray : myLst)
    {
        if (binArray[0].equals(query))
        {
            return binArray[1];
        }
    }
    return "";
}
4

1 に答える 1

3

2 つの要素の配列の代わりに、各配列の最初の要素はすべて一意であるため、 を使用しMap<String, String>ます。このようにして、コードは次のようになります。

public String getSecondField(String query)
{
    String ret = map.get(query);
    return ret != null ? ret : "";
}
于 2013-01-11T23:51:39.907 に答える