khi tôi sử dụng ArrayList trong Java, có một số thứ mà tôi không hiểu. Đây là mã khởi tạo của tôi:ArrayList <Integer> với phương thức get/remove
ArrayList<Integer> list = new ArrayList <Integer>();
list.add (0);
list.add (1);
đôi khi tôi cần phải xoá một đối tượng bằng cách chỉ số của nó:
list.remove (0) // delete the object in the first box
nhưng đôi khi tôi muốn xóa một đối tượng bằng cách nội dung của nó:
list.remove (0) // delete the object HAS Which value of 0
mã này rất mơ hồ. Để làm rõ những gì tôi muốn làm điều đó trong mã, tôi chỉ định kiểu như thế này:
list.remove ((Object) 0) // delete the object which has a value of 0
Nếu tôi không AC, cách duy nhất để biết được phương pháp này được gọi là là để đưa con trỏ chuột vào phương pháp để xem: java.util.ArrayList.remove boolean (đối tượng đối tượng)
Java Nhưng nó tạo sự khác biệt như thế nào? có con trỏ phương pháp không? Có cách nào không rõ ràng hơn để thực hiện việc này không?
cảm ơn bạn rất nhiều, xin lỗi vì tiếng Anh của tôi.
PS: Tôi nên nói rằng cuối cùng tôi đã sử dụng SparseIntArray nhưng tôi tò mò
vâng tôi nhận thấy điều này. nhưng nếu tôi không sử dụng giá trị trả lại, tôi tự hỏi làm thế nào Java làm cho sự khác biệt, làm thế nào autoboxing hoạt động. –
@juliendumortier Nó chỉ phân loại khó hiểu trong kịch bản cụ thể này. nhưng nếu bạn nghĩ về nó nói chung trong trường hợp đối tượng là như thế nào. 'list.remove (động vật)' hoặc 'list.remove (watever)'. – PermGenError
ok cảm ơn! câu hỏi cuối cùng. System.out.println (danh sách.loại bỏ ((số nguyên) 0); đây là một thực hành tốt/xấu? (điều này tránh tạo ra một thể hiện mới). –