执行过程中出现这个问题“Exception in thread "main" java.lang.NullPointerException”

packagecom.mengyun;importjava.io.BufferedReader;importjava.io.IOException;importjava.... package com.mengyun;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;
public class Test18 {
public static void main(String[] args) throws IOException {
// TODO 自动生成的方法存根
Map map=new HashMap();
BufferedReader bf=new BufferedReader(new InputStreamReader(System.in));
Yinghan yh1=new Yinghan("苹果","Apple");
Yinghan yh2=new Yinghan("香蕉","Banana");
Yinghan yh3=new Yinghan("橘子","Orange");
Yinghan yh4=new Yinghan("菠萝","Pineapple");
Yinghan yh5=new Yinghan("梨","Pear");
map.put("苹果",yh1);;
map.put("香蕉",yh2);
map.put("橘子",yh3);
map.put("菠萝",yh4);
map.put("梨", yh5);
Iterator it=map.keySet().iterator();
while(it.hasNext())
{
String key=it.next().toString();
Yinghan yh=(Yinghan)map.get(key);
System.out.println(yh.getHan()+" "+yh.getYing());
}
Translation tl=new Translation();
System.out.println("请选择翻译类型:\n1.汉译英\n2.英译汉");
String x=bf.readLine();
if(x.equals("1"))
{
System.out.println("请输入:");
String han=bf.readLine();
tl.hanYing(han);
}else if(x.equals("2"))
{
System.out.println("请输入:");
String ying=bf.readLine();
tl.yingHan(ying);
}

}

}
class Translation
{
private Map map=null;
public Translation()
{
map=new HashMap();
}
public void hanYing(String han)
{
Yinghan yh1=(Yinghan)map.get(han);
System.out.println(yh1.getYing());
}
public void yingHan(String ying)
{
Yinghan yh2=(Yinghan)map.get(ying);
System.out.println(yh2.getHan());
}
}
class Yinghan
{
private String han;
public String getHan() {
return han;
}
public void setHan(String han) {
this.han = han;
}
public String getYing() {
return ying;
}
public void setYing(String ying) {
this.ying = ying;
}
private String ying;
public Yinghan(String han,String ying)
{
this.han=han;
this.ying=ying;
}
}
展开
 我来答
毕设指导
2015-05-11 · TA获得超过154个赞
知道答主
回答量:156
采纳率:0%
帮助的人:118万
展开全部
有没有写哪一行错误?感觉new Yinghan的时候有问题,Yinghan这个类中,private String ying放的位置应该往上挪到getYing()之前吧!
Monubia
推荐于2018-04-13 · TA获得超过8961个赞
知道大有可为答主
回答量:4373
采纳率:75%
帮助的人:1332万
展开全部
你Translation中的Map是空的,你怎么取得到数据呢??
更多追问追答
追问
public Translation()
{
map=new HashMap();
}

这个不是有对象了吗?
追答

能行了

本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式