से फील्ड नाम सूची प्राप्त करें मुझे केस क्लास के केवल फ़ील्ड नाम प्राप्त करने की आवश्यकता है, मुझे इसके मूल्यों में रूचि नहीं है। मैंने सोचा कि यह समस्या नहीं है और getClass.getDeclaredFields.map (_। GetName) मुझे फ़ील्ड नामों की एक सूची वापस कर देगा। और मुझे समान प्रश्न नहीं मिल रहा है।स्कैला। केस क्लास
scala> case class User(id: Int, name: String)
defined class User
scala> User.getClass.getDeclaredFields
res14: Array[java.lang.reflect.Field] = Array(public static final User$ User$.MODULE$)
scala> User.getClass.getDeclaredFields.toList
res15: List[java.lang.reflect.Field] = List(public static final User$ User$.MODULE$)
scala> val user = User(1, "dude")
user: User = User(1,dude)
scala> user.getClass.getDeclaredFields.toList
res16: List[java.lang.reflect.Field] = List(private final int User.id, private final java.lang.String User.name)
यह उपयोगकर्ता $ क्या है .MODULE $? वह क्या है? जब आप मामले वर्ग के उदाहरण मिल गया
विधि getDeclaredFields ठीक काम करता है, लेकिन मैं आदेश केवल क्षेत्रों
क्यों यह सच नहीं है प्राप्त करने के लिए एक उदाहरण बनाने के लिए नहीं करना चाहते? User.getClass.getDeclaredFields (_। GetName) == सूची ("आईडी", "नाम")
वे आते दिखाई देते हैं लेक्सो ऑर्डर में वापस। क्या उन्हें कोड में घोषित आदेश में वापस आने का कोई तरीका है? – samthebest
इस उत्तर में एक धागा है जो बताता है कि क्रम में कैसे प्राप्त करें: http://stackoverflow.com/a/16079804/1586965 – samthebest