オブジェクトのコレクションを返す API を呼び出しています。オブジェクトのサブセットを取得したい。私が考えている解決策は2つあります。どちらがパフォーマンスを向上させますか? 私の理解に基づいて、toArray()
呼び出しは主にコレクションを 1 回繰り返します。それが本当なら、解決策の方が良いでしょうか?
解決策 1 -
public static List<String> get(UUID recordid, int start, int count) {
List<String> names = new ArrayList<String>();
...
Collection<String> columnnames = result.getColumnNames();
int index = 0;
for (UUID columnname : columnnames) {
if ((index >= start) && (index - start < count)) {
names.add(columnname);
}
index++;
}
return names;
}
解決策 2 -
public static List<String> get(UUID recordid, int start, int count) {
List<String> names = new ArrayList<String>();
...
Collection<String> columnnames = result.getColumnNames();
String[] nameArray = columnnames.toArray(new String(columnnames.size()));
for (int index = 0; index < nameArray.length && count > 0; index++, count--) {
names.add(nameArray[index]);
}
return names;
}