以下のコードで、コンマで区切られた列の値を取得しようとしています。columnsList String
これは完全に正常に機能します-
final String columnsList = getColumns(service.getColumns());
private String getColumns(final List<String> columns) {
List<String> copy = new ArrayList<String>(columns);
Collections.shuffle(copy);
int rNumber = random.nextInt(columns.size()) + 1;
List<String> subList = copy.subList(0, rNumber);
Collections.sort(subList, new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
return columns.indexOf(o1) < columns.indexOf(o2) ? -1 : 1;
}
});
return StringUtils.join(subList, ",");
}
getColumns
ここで、上記のメソッドをそのような方法で変更する必要があります。文字列としてvarious columns
区切られたを返す代わりに、comma
さまざまな列を。として返す必要がありList<String>
ます。だから私がやろうと思った一つの方法は、これを使ってこういうことですArrays.asList
-
final List<String> columnsList = Arrays.asList(getColumns(service.getColumns()).trim().split(","));
しかし、私は、現在行っている方法でgetColumns
はなく、常に戻るようにメソッドを変更できる他の方法を探しています。columns as a List of String
Arrays.asList