Tôi có một mảng nguyên thủy, ví dụ cho int, int [] foo. Nó có thể là một kích thước nhỏ, hoặc không.
int foo[] = {1,2,3,4,5,6,7,8,9,0};
Cách tốt nhất để tạo ra một Iterable<Integer>
từ nó là gì?
Iterable<Integer> fooBar = convert(foo);
Ghi chú:
Vui lòng không trả lời bằng cách sử dụng các vòng lặp (trừ khi bạn có thể đưa ra lời giải thích tốt về cách trình biên dịch làm điều gì đó thông minh về chúng?)
Cũng lưu ý rằng
int a[] = {1,2,3};
List<Integer> l = Arrays.asList(a);
Thậm chí sẽ không biên dịch
Type mismatch: cannot convert from List<int[]> to List<Integer>
Ngoài ra kiểm tra Tại sao một mảng không thể gán cho Iterable? trước khi trả lời.
Ngoài ra, nếu bạn sử dụng một số thư viện (ví dụ, ổi), vui lòng giải thích lý do tại sao đây là tốt nhất. (Bởi vì từ Google không phải là câu trả lời hoàn chỉnh: P)
Cuối cùng, vì dường như có một bài tập về nhà về điều đó, tránh đăng mã bài tập về nhà.