Giả sử tôi có điều này:Cách thay thế dễ nhất cho một mảng chung trong Java là gì?
class test<T>
{
private T[] elements;
private int size;
public test(int size)
{
this.size = size;
elements = new T[this.size];
}
}
vẻ như điều này là không thể vì trình biên dịch không biết những gì constructor để gọi một lần nó cố gắng thay thế mã Generics hoặc một cái gì đó. Những gì tôi đang tự hỏi là, làm thế nào tôi sẽ đi về việc này? Tôi tưởng tượng nó là có thể, cho như thế nào dễ dàng thực hiện nó là trong C + +.
Chỉnh sửa: Xin lỗi tôi đã quên [] trong tuyên bố thành phần.
Tôi đồng ý - Danh sách thường là giải pháp thay thế tốt hơn vì nhiều lý do. Trong thực tế, một số người sẽ đề xuất rằng mảng nên được coi là một phần không được chấp nhận của ngôn ngữ trong Java 5+. Tôi không nói tôi là một trong số họ ... nhưng bạn sẽ tìm thấy ý kiến đó. –
Mảng vẫn hợp lệ đối với các kiểu nguyên thủy. Nhưng đối với các loại tham chiếu, nó chỉ là một tối ưu hóa không phù hợp hầu như mọi lúc. –