| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2034 人关注过本帖
标题:HashMap数据读取问题,求教!(这次是个新的问题,上个帖子时间太长,无法编辑了 ...
只看楼主 加入收藏
星辰浩月
Rank: 1
等 级:新手上路
帖 子:14
专家分:3
注 册:2007-6-21
收藏
 问题点数:0 回复次数:6 
HashMap数据读取问题,求教!(这次是个新的问题,上个帖子时间太长,无法编辑了)
上一个问题,感谢pywepe的回答,谢谢
这回,我写了3个类
public class Map{}  用于存储数据,里面有put()方法和get()方法
public class Test {}  用于输入数据
public class Enter {}  用于读取数据,并输出
现在的问题是,我添加完数据后,在Test {}  里直接调用get()方法能把数据全输出
但是我使用Enter {} 输出数据就全为null,

自己分析可能是   public class Enter {
                    Map m = new Map();    //这里出了问题,new 出一个新的Map
                 ........
                 }
现在我想在别的类里读取原来的数据,Enter {}类应该怎么写?

程序代码:
import java.util.*;
public class Map{
     private HashMap<String, String> map;

     public Map(){
        this.map=new HashMap<String,String>();
     }
    
     public void put(String key,String value){
         this.map.put(key,value);
     }
    
     public void get(){
         Set keySet = map.keySet();
        Iterator<String> it= keySet.iterator();
        while(it.hasNext()) {
            String key = it.next();
            String val = map.get(key);
            System.out.println(key + " " + val);
        }
     }
}

程序代码:
import java.util.*;
public class Test {
    public static void main(String[] args) {
        Map m = new Map();
        Enter en = new Enter();
        Scanner sc = new Scanner(System.in);
        for(int i = 0 ; i < 3 ; i++){
        String key = sc.next();
        String val = sc.next();
        m.put(key,val);
        }
        m.get();
        en.enter();
    }
}

程序代码:
public class Enter {
    Map m = new Map();
    public void enter(){
         m.get();
    }
}
搜索更多相关主题的帖子: 帖子 数据 HashMap 时间 
2009-08-30 10:11
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
传入持有对方的引用。就是将Map类传入到Enter中。

倚天照海花无数,流水高山心自知。
2009-08-30 10:56
星辰浩月
Rank: 1
等 级:新手上路
帖 子:14
专家分:3
注 册:2007-6-21
收藏
得分:0 
大概理解了,但是不知道怎么写
2009-08-30 11:41
pywepe
Rank: 6Rank: 6
等 级:侠之大者
威 望:4
帖 子:296
专家分:483
注 册:2009-4-5
收藏
得分:0 
回复 3楼 星辰浩月
你不是喜欢传参数吗
传参数也行呀
....
  class Enter{
     public static void read(Map<Object,Object> map){
       ...
     }
  }

java群
62635216
欢迎加入
2009-08-30 11:52
星辰浩月
Rank: 1
等 级:新手上路
帖 子:14
专家分:3
注 册:2007-6-21
收藏
得分:0 
我知道可以传递,那这样的话
public class Test {
    public static void main(String[] args) {
        ......
        en.enter();  // 这里也要传递进去en.enter(map);  可是这里并没有定义map呀
    }
}

我也想过传递,但是传来传去,不觉得有点太麻烦吗?
而且如果我在Map里定义了2个HashMap(map1, map2),我就不知道怎么使用返回值了
2009-08-30 11:59
星辰浩月
Rank: 1
等 级:新手上路
帖 子:14
专家分:3
注 册:2007-6-21
收藏
得分:0 
继续等帮助
2009-08-30 13:14
pywepe
Rank: 6Rank: 6
等 级:侠之大者
威 望:4
帖 子:296
专家分:483
注 册:2009-4-5
收藏
得分:0 
回复 6楼 星辰浩月

写一个类
Map
有关它的方法全部封装在它自己里面 ,不要又说XXX类来执行输出操作
public abstract class MapFather{
 
    public abstract void put(...自己写);
    public abstract void get(...);
    ...
    //Map 就extends 这个类吧
 
}

java群
62635216
欢迎加入
2009-08-30 21:23
快速回复:HashMap数据读取问题,求教!(这次是个新的问题,上个帖子时间太长,无法编 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.030177 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved