私の問題は少し単純ですが、頭を悩ませることができません (Java の新機能)。
リストがあり、それを印刷したい。
ここでの問題は、リストの一部の要素がリスト自体になる可能性があることです。
例えば:
["foo",1,2,[22,23],[1,[22,[23]]] ... ]
これを詳細に印刷したいのですが、つまり、出力は次のようになります。
"foo", 1,2,22,23, 1,22,23..
Javaでこれを行うにはどうすればよいですか
私の問題は少し単純ですが、頭を悩ませることができません (Java の新機能)。
リストがあり、それを印刷したい。
ここでの問題は、リストの一部の要素がリスト自体になる可能性があることです。
例えば:
["foo",1,2,[22,23],[1,[22,[23]]] ... ]
これを詳細に印刷したいのですが、つまり、出力は次のようになります。
"foo", 1,2,22,23, 1,22,23..
Javaでこれを行うにはどうすればよいですか
再帰的に実行します。擬似コード:
function printRecursively (list):
for item in list:
if item is Array:
printRecursively(item)
else:
printItem(item)
現在の要素が再びリストであるかどうかを確認しtoString
、Java のすべてのオブジェクトが持つ - メソッドを使用することで、これを再帰的に行うことができます。
public void printList(List<Object> a)
{
for (Iterator<Object> it = a.iterator(); it.hasNext();) {
Object item = it.next();
if (item instanceof List) printList((List<Object>) item);
else System.out.print(item + ", ");
}
}