免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2323 | 回复: 3
打印 上一主题 下一主题

麻烦大家给看一下这个程序问什么报错呀,谢谢 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-06-10 10:09 |只看该作者 |倒序浏览
我是新手,麻烦大家给看一下。请问下面这个程序问什么编译时报错找不到d1和d2呀。先谢谢各位了。

public class TestA {
public static void main(String[] args) {
  if(args.length < 3) {
   System.out.println("Usage: java TestArgs \"n1\" \"op\" \"n2\"");
   System.exit(-1);
  }
  try {
   double d1 = Double.parseDouble(args[0]);
  } catch (NumberFormatException e) {
   e.printStackTrace();
  }
  try {
   double d2 = Double.parseDouble(args[2]);
  } catch (NumberFormatException e) {
   e.printStackTrace();
  }
  double d = 0;
  
  if(args[1].equals("+")) {
   d = d1 + d2;
  } else if (args[1].equals("-")) {
   d = d1 - d2;
  } else if (args[1].equals("x")) {
   d = d1 * d2;
  } else if (args[1].equals("/")) {
   d = d1 / d2;
  } else {
   System.out.println("Error operator!");
   System.exit(-1);
  }
  System.out.println(d);
}
}

论坛徽章:
0
2 [报告]
发表于 2008-06-10 10:34 |只看该作者

回复 #1 xhkbnkcu 的帖子

因为你的 d1 和d2 都在 try {}里面,所以 d1 和d2 都必须声明为在try{}外面。。。。。。。。。。。。。。。!@

论坛徽章:
0
3 [报告]
发表于 2008-06-10 10:54 |只看该作者
哦,我明白了,谢谢你了,非常感谢。

论坛徽章:
0
4 [报告]
发表于 2008-06-12 13:01 |只看该作者
刚开始学,很容易犯错哦。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP