这个错误是因为你定义x=8,y=11时,当把x、y传入ternary(x);和alternative(y);时x、y的值变化了,但是当你在打印函数prt();中还是传入的是你最开始定义的x=8,y=11的值,所以打印出来的值就是x=8,y=11,而不是你想要的是800,110
正确的如下:
package chapter02;
public class Text3 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int x = 8;
int y = 11;
ternary(x);
prt(ternary(x));//这一行参数ternary(x)
//System.out.println(x);
alternative(y);
prt(alternative(y));//这一行参数是alternative(y)
}
/**
* 三元方法
* @param i
*/
public static int ternary(int i){
return i<10 ? i*100 : i*10;
}
/**
* if else 方法
* @param i
*/
public static int alternative(int i){
if(i<10)
return i*100;
return i*10;
}
public static void prt(Object obj){
System.out.println(obj);
}
} |