3个回答
展开全部
Set set = hm.entrySet() ;
java.util.Iterator it = hm.entrySet().iterator();
while(it.hasNext()){
java.util.Map.Entry entry = (java.util.Map.Entry)it.next();
Object key = entry.getKey(); // 返回与此项对应的键,如果是一个类则强制转型,而且这个类必须有toString方法,或者你自己写的输出两个字符串的方法
Object value = entry.getValue(); // 返回与此项对应的值
System.out.println(key); // 在这里输出
System.out.println(value);
java.util.Iterator it = hm.entrySet().iterator();
while(it.hasNext()){
java.util.Map.Entry entry = (java.util.Map.Entry)it.next();
Object key = entry.getKey(); // 返回与此项对应的键,如果是一个类则强制转型,而且这个类必须有toString方法,或者你自己写的输出两个字符串的方法
Object value = entry.getValue(); // 返回与此项对应的值
System.out.println(key); // 在这里输出
System.out.println(value);
追问
java.util.Iterator it = hm.entrySet().iterator();
这句为什么写成Iterator it = hm.entrySet().iterator();会出错
还有这句
Object key = entry.getKey(); key的类里面要写一个toString方法,是这个意思吗?
追答
写成Iterator it = hm.entrySet().iterator(); 不是出错,是你没导入Iterator
写一个toString方法是在key的类型定义里写。
因为“hashmap的key是一个类,类中有两个字符串”,你要输出key,应该是要把key的两个字符串输出来吧,那么toString方法可以这么写
public String toString() {
return "属性A:"+属性A+", 属性B:"+属性B;
}
展开全部
可以通过“FileOutputStream”创建文件实例,之后过“OutputStreamWriter”流的形式进行map值的存储,举例:
OutputStreamWriter pw = null;//定义一个流
pw = new OutputStreamWriter(new FileOutputStream(“D:/test.txt”),"GBK");//确认流的输出文件和编码格式,此过程创建了“test.txt”实例
HashMap<String,String> headers = new LinkedHashMap<String,String>();//创建一个map
headers.put("Cache-Control", "no-cache");//给map赋第一个值
headers.put("Connection", "close");//给map赋第二个值
Set keys1 = headers.keySet();//获取所有的key值
pw.write("我是要写入到记事本文件的内容"+keys1 );//将要写入文件的内容,可以多次write
pw.close();//关闭流
备注:文件流用完之后必须及时通过close方法关闭,否则会一直处于打开状态,直至程序停止,增加系统负担。
OutputStreamWriter pw = null;//定义一个流
pw = new OutputStreamWriter(new FileOutputStream(“D:/test.txt”),"GBK");//确认流的输出文件和编码格式,此过程创建了“test.txt”实例
HashMap<String,String> headers = new LinkedHashMap<String,String>();//创建一个map
headers.put("Cache-Control", "no-cache");//给map赋第一个值
headers.put("Connection", "close");//给map赋第二个值
Set keys1 = headers.keySet();//获取所有的key值
pw.write("我是要写入到记事本文件的内容"+keys1 );//将要写入文件的内容,可以多次write
pw.close();//关闭流
备注:文件流用完之后必须及时通过close方法关闭,否则会一直处于打开状态,直至程序停止,增加系统负担。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
重写key这个类的toString方法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询