टाइप को तुरंत चालू नहीं कर सकता है, मैं स्ट्रिंग्स का एक सेट बनाने की कोशिश कर रहा हूं जो हैशटेबल से चाबियों से भरा हुआ है, इसलिए प्रत्येक लूप सेट के माध्यम से पुन: सक्रिय हो सकता है और हैशटेबल में डिफ़ॉल्ट डाल सकता है। मैं अभी भी जावा सीख रहा हूं लेकिन जिस तरह से मैं इसे करने की कोशिश कर रहा हूं वह वैध वाक्यविन्यास नहीं है। क्या कोई ऐसा करने का उचित तरीका दिखा सकता है और समझा सकता है कि मेरा तरीका क्यों काम नहीं करता है और उनका क्या करता है।टाइप
private Hashtable<String, String> defaultConfig() {
Hashtable<String, String> tbl = new Hashtable<String, String>();
tbl.put("nginx-servers","/etc/nginx/servers");
tbl.put("fpm-servers","/etc/fpm/");
tbl.put("fpm-portavail","9001");
tbl.put("webalizer-script","/usr/local/bin/webalizer.sh");
tbl.put("sys-useradd","/sbin/useradd");
tbl.put("sys-nginx","/usr/sbin/nginx");
tbl.put("sys-fpmrc","/etc/rc.d/php_fpm");
tbl.put("www-sites","/var/www/sites/");
tbl.put("www-group","www");
return tbl;
}
//This sets missing configuration options to their defaults.
private void fixMissing(Hashtable<String, String> tbl) {
Hashtable<String, String> defaults = new Hashtable<String, String>(defaultConfig());
//The part in error is below...
Set<String> keys = new Set<String>(defaults.keySet());
for (String k : keys) {
if (!tbl.containsKey(k)) {
tbl.put(k, defaults.get(k));
}
}
}
'होना चाहिए नई HashSet();' –
हैशटेबल ज्यादातर अप्रचलित है - आपको आमतौर पर इसके बजाय हैश मैप का उपयोग करना चाहिए। – assylias
संभावित डुप्लिकेट [प्रकार सूची को तत्काल नहीं कर सकता] (http://stackoverflow.com/questions/7960149/cannot-instantiate-the-type-listproduct) –
Raedwald