保持顺序的 Java Properties 类

阅读更多
public class OrderedProperties extends Properties {

    private static final long serialVersionUID = -4627607243846121965L;
    
    private final LinkedHashSet keys = new LinkedHashSet();

    public Enumeration keys() {
        return Collections. enumeration(keys);
    }

    public Object put(Object key, Object value) {
        keys.add(key);
        return super.put(key, value);
    }

    public Set keySet() {
        return keys;
    }

    public Set stringPropertyNames() {
        Set set = new LinkedHashSet();

        for (Object key : this.keys) {
            set.add((String) key);
        }

        return set;
    }
}

Properties p=System.getProperties(); 
for(Enumeration e=p.propertyNames(); e.hasMoreElements();){ 
    String key=(String) e.nextElement(); 
    System.out.println(key+"===>"+p.getProperty(key)); 
}

Properties p=System.getProperties(); 
for(Object t:p.keySet()){ 
    System.out.println(t+"="+p.getProperty(t.toString())); 

你可能感兴趣的:(java)