如何在 java 中的字符串中转换散列 table

how to convert a hash table in string in java

我是 java 的新手,我想将散列 table 转换为字符串形式,每一对由任何特殊字符分隔。我不太清楚如何在散列 table 上应用循环并从中提取值。请向我解释如何执行此操作。提前致谢

 public String parseHashtable(Hashtable detailHashtable){

    String hashstring= "";
    foreach(){
    hashstring += key + "=" + hashtable[key] + "|";
    }
     return hashstring;
 }

您可以按如下方式使用Map.Entry:

 String hashstring= "";
    for (Map.Entry<String, String> entry : hashTable.entrySet()) {
        hashstring += entry.getKey() + "=" + entry.getValue() + "|";
    }
public String parseHashtable(Hashtable detailHashtable){

    String hashstring= "";
    for(Entry<String,String> entry : detailHashtable.entrySet()){
        hashstring += entry.getKey() + "=" + entry.getValue() + "| ";
    }

    return hashstring;  
}
String seperator = "|";
StringBuilder sb = new StringBuilder();

Set<String> keys = detailHashtable.keySet();
for(String key: keys) {
    sb.append(key+"="+detailHashtable.get(key)+ seperator);
}

return sb.toString();

HashMapHashTable 都可以使用 Map.Entry 同时获取键和值。

String hashstring= "";
for (Map.Entry<String, String> entry : detailHashtable.entrySet()) {
    hashstring += entry.getKey() + "=" + entry.getValue() + "|";
}

参考API了解可以使用哪些操作。 http://docs.oracle.com/javase/7/docs/api/java/util/Hashtable.html#entrySet()

Map Hashtable extends 提供方法 Map.entrySet(),returns 包含映射中所有条目的集合。

for(Map.Entry e : detailHashTable.entrySet()){
    Object key = e.getKey();
    Object value = e.getValue();

    ...
}

使用 entry.getKey().toString()entry.getValue().toString() ;