Tôi muốn tạo mảng hai chiều mà tôi muốn lưu trữ bản ghi từ cơ sở dữ liệu. Vì vậy, hãy nói rằng đầu tiên là loại int
và loại thứ hai là String
(ở đây tôi chỉ mô tả một bản ghi về cơ bản là các loại cột db). Tôi làm nó như thế nào? Là một mảng cấu trúc dữ liệu đúng cho điều đó?Mảng hai chiều các loại khác nhau
Trả lời
Mảng chỉ có thể chứa một loại. Nếu kiểu đó xảy ra là Object
thì nó có thể lưu trữ Object
và bất kỳ loại phụ nào của nó, nhưng điều đó không thực sự giống như những gì bạn đang cố gắng thực hiện ở đây.
Có vẻ như những gì bạn mô tả là một mảng 2D để lưu trữ thông tin cơ sở dữ liệu, với mỗi phần tử trong mảng là một cột trong một trong các hàng. không phải là một mảng bản ghi, đó là một mảng dữ liệu cột.
Thay vào đó, chỉ lưu một mảng bản ghi một chiều, trong đó mỗi phần tử của mảng là tham chiếu đến toàn bộ hàng DB.
Tôi không chắc chắn tôi đang theo dõi, nhưng bạn có thể đang tìm kiếm Map<Integer,String>
. hoặc Map<Integer,List<String>>
. [Có một cái nhìn vào List, và HashMap]
Map
cho phép Hiệp hội các phím [Integer
] với giá trị [String
hoặc List
].
Map
cũng cho phép tra cứu nhanh khóa và giá trị được đính kèm của khóa.
(*) Bạn nên sử dụng Map<Integer,List<String>>
nếu bạn muốn đính kèm nhiều hơn thì một String
mỗi Integer
, hoặc cách khác bạn có thể sử dụng commons apache MultiMap
Bản đồ
@yogeshprajapata Bạn có thể sử dụng một trong 'MultiMap' của Guava hoặc Apache để cho phép điều này. – Jeffrey
@ Jeffrey nhưng bạn chưa nhắc đến ở đây là bạn đang nói về Bản đồ của Gauvas. –
Bạn có thể sử dụng
HashMap<Integer, ArrayList<String>>
Bạn có thể làm tương tự với sự giúp đỡ của điều này
Object[][] o = new Object[10][10];
o[0][0] = 1;
o[0][1] ="hello";
System.out.println(o[0][0]);
System.out.println(o[0][1]);
Hey Yogesh, tôi đang cố gắng làm điều tương tự với o [0] [0] = một mảng các chuỗi và o [0] [1] = một chuỗi. điều này không hiệu quả đối với tôi, liệu công việc này có phù hợp với tôi không? – Tomer
Hãy đăng mã của bạn. –
Nếu bạn chỉ muốn có một cột của Chuỗi dat a và một cột của int dữ liệu, đây là những gì bạn có thể xem xét thực hiện:
Khai báo một mảng 2 chiều Chuỗi
String[][] words = new String[][];
cột đầu tiên của bạn có thể chứa tất cả các dữ liệu String. Cột thứ hai có thể có dữ liệu số nhưng dưới dạng một Chuỗi. Bạn có thể muốn sử dụng Integer.toString() và Integer.parseInt() phương pháp để làm điều này
words[index][index] = Integer.toString(Integer.parseInt(args));
Tôi không chắc chắn chính xác những gì bạn hy vọng sẽ đạt được nhưng bạn có thể xem xét điều chỉnh đoạn này cho phù hợp với nhu cầu của bạn
- 1. Mảng các loại khác nhau
- 2. Xác định mảng động hai chiều với các kiểu khác nhau
- 3. Sao chép hai mảng hai chiều khác mảng hai chiều Java
- 4. Matching hai Danh sách các loại khác nhau với nhau
- 5. F # Các loại mảng đa chiều
- 6. các div chiều cao khác nhau nổi trong hai cột
- 7. Powershell: Hai mảng chiều
- 8. Serialize/Deserialize mảng hai chiều
- 9. Tìm hàng xóm trong mảng hai chiều
- 10. Hai mảng chiều và con trỏ
- 11. Mảng hai chiều trong python
- 12. Mảng nhiều chiều với kích cỡ khác nhau
- 13. push() một mảng hai chiều
- 14. Java - in mảng hai chiều
- 15. Sự khác nhau giữa các ký hiệu Mảng đa chiều (đối tượng [] [] và đối tượng [,])
- 16. . Net Tiêu thụ Dịch vụ Web: Các loại giống nhau trong hai dịch vụ khác nhau
- 17. Tạo mảng hai chiều qua LINQ
- 18. Sự khác nhau giữa hai mảng Iterations là gì?
- 19. Ninject: Tiêm hai đối tượng khác nhau cùng loại
- 20. Đồng bộ hóa chiều rộng cột giữa các bảng trong hai khung khác nhau, v.v ..
- 21. set_intersection cho hai loại khác nhau của bộ
- 22. hai divs cạnh nhau, một chiều rộng 100% chiều rộng khác phụ thuộc vào nội dung
- 23. Hai mảng chiều với con trỏ
- 24. Cắt mảng hai chiều trong C#
- 25. Tham chiếu đến Mảng hai chiều
- 26. cách trả về mảng c chiều hai chiều C++?
- 27. Hành vi khác nhau sử dụng quan hệ một chiều hoặc hai chiều
- 28. Tổng chiều dài chuỗi của hai nút khác nhau với Xpath - Tổng hai nút có chiều dài chuỗi
- 29. Lấy các phần tử liền kề trong mảng hai chiều?
- 30. Sử dụng mảng hai chiều (đa chiều) trong Erlang
Tôi xin lỗi nhưng tôi không chắc chắn ý của bạn là gì: "mỗi phần tử của mảng là tham chiếu đến toàn bộ hàng DB". Toàn bộ hàng DB được tạo thành từ hai cột gồm các loại, chuỗi và int khác nhau. Làm thế nào tôi có thể lưu trữ nó trong một mảng? – lunar
Bạn đang sử dụng gì để truy cập cơ sở dữ liệu? Phải có một đối tượng đại diện cho một hàng trong một bảng. Sau đó, hàng đó phải có các phương thức mà bạn có thể gọi để truy cập dữ liệu cột trong hàng đó. Bất cứ đối tượng nào kết thúc tốt đẹp hàng cơ sở dữ liệu là những gì bạn cần lưu trữ trong mảng của bạn. Ý tôi là, đó là cơ bản những gì một bảng cơ sở dữ liệu là một mảng các hàng. – jefflunt