में चर के आधार पर ऑब्जेक्ट्स की सूची से ऑब्जेक्ट प्राप्त करें मेरे पास उपयोगकर्ता ऑब्जेक्ट की सूची है, मैं केवल उपयोगकर्ता ऑब्जेक्ट में चर के आधार पर उपयोगकर्ता ऑब्जेक्ट्स को सूची से प्राप्त करना चाहता हूं।ऑब्जेक्ट
public class User {
private int id;
private String sex;
private int age;
private String country;
/**
* Getter and setter for all variables
*/
}
मेरे पास इस तरह का मॉडल क्लास है। अब मेरे पास उपयोगकर्ता ऑब्जेक्ट्स की सूची है।
List<User> users = new ArrayList<User>();
यदि उपयोगकर्ता पुरुष है तो मैं उपयोगकर्ताओं की सूची से वस्तुओं को प्राप्त करना चाहता हूं।
List<User> ageList = new ArrayList<User>();
for(User object : users) {
if(object.getSex().equals("Male")){
ageList.add(object);
}
}
मुझे उपरोक्त दृष्टिकोण पसंद नहीं है। ऑब्जेक्ट में परिवर्तनीय के आधार पर ऑब्जेक्ट्स की सूची से वस्तुएं प्राप्त करने का कोई बेहतर तरीका है ..?
क्या कोई संग्रह जावा संग्रह .. है? क्या हम Java Comparator का उपयोग कर इसे हल कर सकते हैं ..?
मुझे इस नोटेशन को पसंद नहीं करने का कारण यह है कि यह लंबे समय तक और पुस्तकालयों/विधियों को जोड़ता है जो बाद में इसे पढ़ने वाले किसी व्यक्ति से परिचित नहीं हो सकते हैं। यह एक शर्म की बात है जावा इस उपयोग के मामले के लिए बेहतर समर्थन नहीं है (बस लगभग हर दूसरी लोकप्रिय भाषा की तरह: पी) –
@ पीटर: मैं सहमत हूं, रूबी एक अरब बार बेहतर है: 'पुरुष = उपयोगकर्ता। चयन {| उपयोगकर्ता | user.sex == 'Male'} ' –
यहां तक कि उबाऊ और बहुत पुराना एसक्यूएल 'उन उपयोगकर्ताओं से चुनें * जहां लिंग =" पुरुष "मुझे अभिव्यक्ति पसंद है जो दोनों छोटे हैं और कम प्रतीकों की आवश्यकता है। अधिकांश प्रोग्रामर सरल एसक्यूएल को समझ और लिख सकते हैं। –