2010-06-25 32 views

Trả lời

10

Bạn có muốn thực hiện kiểm tra tên hoặc kiểm tra dựa trên đối tượng không?

Kể từ Class thực hiện Type, bạn thực sự có thể đi trực tiếp và thực hiện bình đẳng chống lại String.class Ví dụ: if (t.equals (String.class))

Tuy nhiên, nếu bạn muốn làm một tấm séc dựa về tên, sau đó kiểm tra đầu tiên nếu t là một thể hiện của Class, và sau đó cast nó vào Class, lấy tên đầy đủ và so sánh.

+1

Thực ra 'Field.getType()' trả về 'Lớp 'vì vậy anh ấy an toàn để đi theo cách này. – laura

+0

Huh ... Thật thú vị. Tôi nên đã xem xét các JavaDocs. Nó làm gì trong nguyên nhân của nguyên thủy? – Uri

+2

Nguyên thủy, mặc dù không thực sự là các lớp, có một đối tượng Lớp được liên kết với chúng. 'Lớp i = int.class;' – ILMTitan

Các vấn đề liên quan