Có thể nhận các giá trị điều tra từ một Lớp không? Hãy để tôi giải thích điều này một chút. Nếu tôi có một enum ví dụ FooBar, sau đó tôi có thể nhận được các giá trị của FooBar bằng cách gọi FooBar.values () sẽ trả về một mảng với các liệt kê (FooBar []). Vấn đề của tôi là, tôi có một phương thức lấy tham số đầu vào một lớp (Class c) và trong phương thức tôi kiểm tra xem nó có phải là enum (c.isEnum()) hay không. Nếu nó là một enum, tôi sẽ cần phải bằng cách nào đó có được các giá trị enum, vấn đề là tôi không biết khá làm thế nào để làm điều này, tôi thậm chí không hoàn toàn chắc chắn nó có thể. Vì vậy, là nó có thể và nếu nó là, làm thế nào tôi có thể thực hiện điều này? (Lưu ý rằng giải pháp cần phải là chung chung, nói cách khác không phải là của người khác).Lấy các giá trị liệt kê từ Lớp
Trả lời
Um ... bạn đã xem tài liệu API chưa?
được sửa đổi:. Bạn có thể sử dụng c.getClass() getEnumConstants() để có được các giá trị của hằng số
(nó nói 'tên' thay vì 'giá trị' và bổ sung một số nội dung không cần thiết)
Sai. getEnumConstants() trả về các giá trị, không phải các tên - và chúng thậm chí được gõ thông qua Generics nếu đối tượng lớp là, mặc dù điều đó có lẽ không áp dụng trong trường hợp này. –
Ah, tôi nghĩ tôi vừa thử nghiệm điều đó, nhưng có một lỗi trong bài kiểm tra nhanh chóng của tôi; xin lỗi vì điều đó. – Confusion
- 1. Java Enums: Liệt kê các giá trị được liệt kê từ một Class <? mở rộng Enum>
- 2. JAXB liệt kê với giá trị số
- 3. Liệt kê các giá trị có thể đặt trong Delphi
- 4. Vòng lặp trên các giá trị liệt kê
- 5. Liệt kê các giá trị đăng ký trong Go (Golang)
- 6. Chỉ định giá trị cho các loại được liệt kê
- 7. Liệt kê các phím trong từ điển?
- 8. Lấy giá trị Số nguyên của một kiểu liệt kê là số chung
- 9. Tìm giá trị bất thường trong một mảng, liệt kê
- 10. Giá trị liệt kê Scala không được đặt hàng?
- 11. Hạn chế liệt kê WSDL với cặp khóa/giá trị
- 12. XSD Định nghĩa cho liệt kê giá trị gia tăng
- 13. Lấy các giá trị từ máy chủ
- 14. Lấy các giá trị từ ô JTable
- 15. Liệt kê các phương thức của một lớp trough mixin
- 16. Làm thế nào để ghi lại các giá trị liệt kê có cùng tên với Doxygen?
- 17. Cách liệt kê tất cả các thuộc tính của lớp
- 18. Groovy Liệt kê tất cả các thuộc tính cho lớp
- 19. Cách liệt kê các phím CFProperyList/CFDictionary
- 20. Cách chuyển các giá trị được liệt kê sang một dịch vụ web
- 21. Liệt kê các giá trị khác biệt trong một vectơ trong R
- 22. Scala liệt kê để int
- 23. Trong Windbg, làm thế nào tôi có thể liệt kê các giá trị của một kiểu liệt kê trong khi gỡ lỗi?
- 24. Cách lấy giá trị của mục đã chọn từ CheckedListBox?
- 25. Liệt kê các ổ đĩa ngoài
- 26. liệt kê các phân vùng trong nútjs
- 27. Nhận giá trị đại diện của một kiểu liệt kê trong Ada
- 28. Lấy các giá trị từ cấu hình Log4Net
- 29. liệt kê hashset và xóa các phần tử từ nó
- 30. Cách lấy một tập hợp con của một liệt kê
Có, một vài lần và tôi bằng cách nào đó chỉ giữ thiếu phương thức đó o_O –
Chỉ cần thêm ví dụ về cách sử dụng: http://java.sun.com/docs/books/tutorial/reflect/special/ enumMembers.html – Kosi2801