F_G

许多问题需要说清楚就可以&&走永远比跑来的重要

导航

[Java] switch-case 当中的变量定义

 1 switch(c){
 2                     case '+':
 3                         int res =d1+d2;
 4                         data.push(res);
 5                         break;
 6                     case '-':
 7                         res = d2-d1;
 8                         data.push(res);
 9                         break;
10                     case '*':
11                         res =d1*d2;
12                         data.push(res);
13                         break;
14                     case '/':
15                         res = d2/d1;
16                         data.push(res);
17                         break;
18 }

上面的定义是有问题的,会提示res的重复定义,所以switch当中的多个case语句实际上命名空间是一样的。

所以上面应该定义为:

 1                 int res=0;
 2                 switch(c){
 3                     case '+':
 4                         int res =d1+d2;
 5                         data.push(res);
 6                         break;
 7                     case '-':
 8                         res = d2-d1;
 9                         data.push(res);
10                         break;
11                     case '*':
12                         res =d1*d2;
13                         data.push(res);
14                         break;
15                     case '/':
16                         res = d2/d1;
17                         data.push(res);
18                         break;
19                 }

 

posted on 2015-08-19 19:53  F_G  阅读(4670)  评论(0编辑  收藏  举报