Tôi muốn biết cách tạo danh sách liên kết các danh sách được liên kết. Ngoài ra, Sẽ hữu ích nếu được xác định trước LinkedList
(lớp từ Java) và các phương thức của nó được sử dụng để xác định và cho các hoạt động thêm, nhận, listIterating khác.Danh sách liên kết danh sách liên kết trong Java
Trả lời
Bạn có thể đặt bất kỳ đối tượng nào vào danh sách, kể cả danh sách khác.
LinkedList<LinkedList<YourClass>> list = new LinkedList<LinkedList<YourClass>>();
là một LinkedList
của LinkedList
s của YourClass
đối tượng. Nó cũng có thể được viết bằng một cách đơn giản since Java 7:
LinkedList<LinkedList<YourClass>> list = new LinkedList<>();
ví dụ Rất đơn giản thao tác một danh sách như vậy:
Sau đó bạn cần phải tạo ra mỗi sublist, ở đây thêm một sublist duy nhất:
list.add(new LinkedList<YourClass>());
Sau đó tạo các đối tượng nội dung:
list.get(sublistIndex).add(new YourClass());
Sau đó bạn có thể duyệt qua nó như thế này (mục danh sách con được nhóm lại theo sublist):
for(LinkedList<YourClass> sublist : list) {
for(YourClass o : sublist) {
// your code here
}
}
Nếu bạn muốn thêm các phương pháp cụ thể vào danh sách này của danh sách, bạn có thể tạo một lớp con của LinkedList
(hoặc List
, hoặc bất kỳ lớp học nào khác là List
) hoặc bạn có thể tạo một lớp với danh sách các danh sách dưới dạng một trường và thêm phương thức vào đó để thao tác danh sách.
và cách lặp lại danh sách này? – roottraveller
@roottraveller Đã thêm một ví dụ đơn giản :) Có nhiều cách có thể thực hiện, tùy thuộc vào những gì bạn muốn làm. – Autar
LinkedList<LinkedList<YourClass>> yourList = new LinkedList<LinkedList<YourClass>>();
Làm tờ khai. Để thêm một danh sách liên kết (đến cuối theo mặc định), bạn sẽ làm gì
yourList.add(new LinkedList<YourClass>());
Để thêm một yếu tố để cho phép nói rằng danh sách liên kết thứ hai trong series:
yourList.get(1).add(new YourClass());
Vâng tôi đã làm điều này mã và tôi đã nhận nó đúng
java.util.LinkedList mainlist = new java.util.LinkedList();
java.util.LinkedList sublist1 = new java.util.LinkedList();
sublist1.add(object1);
sublist1.add(object2);
sublist1.add(object3);
java.util.LinkedList sublist2=new java.util.LinkedList();
sublist2.add(1);
sublist2.add(2);
mainlist.add(sublist1);
mainlist.add(sublist2);
// To retrieve the sublist1 from mainlist...........
java.util.LinkedList temp = (java.util.LinkedList)mainlist.get(0);
đây biến mainlist là Li nkedList của LinkedLists và biến tạm chứa giá trị danh sách đầu tiên được lưu trữ tức là sublist1 ..
Bạn thậm chí có thể đơn giản hóa truy cập vào danh sách thứ, ví dụ sử dụng
final List<List<String>> lists = new LinkedList<List<String>>() {
@Override
public List<String> get(final int index) {
while (index >= size()) {
add(new LinkedList<>());
}
return super.get(index);
}
};
Mã này tự động thêm LinkedList
s mới vào danh sách ngoài. Với mã này, sau này bạn có thể dễ dàng thêm các giá trị đơn lẻ:
lists.get(2).add("Foo");
- 1. Danh sách liên kết chứa các danh sách được liên kết khác & miễn phí
- 2. Danh sách liên kết đôi trong C++
- 3. Ném một danh sách liên kết ngoại lệ trong Java
- 4. Danh sách liên kết đệ quy trong Java
- 5. Danh sách liên kết đơn lẻ trong java
- 6. Sắp xếp danh sách được liên kết trong Java
- 7. Cách liên kết danh sách với dataGridView?
- 8. C++ Hành vi danh sách liên kết
- 9. Rails ActiveRecord Model Danh sách liên kết
- 10. C++ vectơ/danh sách liên kết lai
- 11. Danh sách liên kết bốn là gì?
- 12. Danh sách liên kết tới DataSource
- 13. Danh sách liên kết phải CSS
- 14. đảo ngược danh sách liên kết
- 15. Danh sách liên kết tới DataGrid
- 16. Liên kết hai Danh sách Sưu tậpCollection
- 17. Danh sách các lệnh liên kết zsh
- 18. Xóa danh sách liên kết kép
- 19. java - lặp lại danh sách được liên kết
- 20. Danh sách liên kết Java - thêm phương thức
- 21. Danh sách liên kết đa luồng được nối kết
- 22. Tạo danh sách được liên kết vòng tròn trong C#?
- 23. Xóa một nút trong danh sách liên kết đơn lẻ
- 24. Liên kết của LinkHashMap - Sử dụng Danh sách Liên kết Đôi, không phải là một Danh sách Liên kết Đơn; Tại sao
- 25. danh sách liên kết để danh sách thả xuống, phải làm gì với giá trị?
- 26. Có phải Danh sách <T> là một danh sách được liên kết không?
- 27. Cây: Danh sách được Liên kết và Mảng (Hiệu quả)
- 28. danh sách liên kết php spl hoặc tùy chỉnh?
- 29. Danh sách liên kết các lớp học vào DataGridView
- 30. Mã C cho danh sách liên kết XOR
Thậm chí, nếu tôi nhận mã của lớp danh sách liên kết do người dùng xác định với các phương pháp cơ bản. Cảm ơn –
Bạn không cần phải nhận xét về bài đăng của mình theo cách này.Bạn có thể chỉnh sửa câu hỏi ban đầu của mình bất kỳ lúc nào. – BlackVegetable