2 sinat 31621401 sinat_31621401 于 2016.03.09 21:55 提问

java调用方法的简单问题

小弟刚刚自学java,在学习时遇到一个编程题,问题是y=x+3(x>0)
=0(x=0)
=x*x-1(x>0)
这是小弟编的代码,图片说明
这是报错图片说明
恳请大神帮助,!!!

13个回答

u010319440
u010319440   2016.03.09 22:26
已采纳

public class byt2 {

    public static void main(String[] args) {
        int x=3;   int y = 0;
        if (x>0){
            //int y=getYa(x); 已经定义过y,无需再定义了
            y = getYa(x);
        }else if(/*x=0 这里判断错误了表示是否相等用==*/x == 0){
            y = 0;
        }else if (x < 0){
            //int y=getYb(x);   已经定义过y,无需再定义了
            y = getYb(x);
        }
        System.out.println("y="+ y/*y这里y有可能没初始化,在第五行初始化y = 0*/);

    }
    public static int getYa(/*intx中间要有空格*/int x){
        //y=x+3; y在新的 函数要定义
        int y = x + 3;
        return y;
    }
    public static int getYb(/*intxintx中间要有空格*/int x){
        //y在新的 函数要定义
        int y=x*x-1;
        return y;
    }

}

qq_33996804
qq_33996804   2016.03.09 22:01

你用汉语字符了吧 你改改看

qq_33996804
qq_33996804   2016.03.09 22:02

还有public修饰的类名要一定要大写

gooddaisss
gooddaisss   2016.03.09 22:07

哈哈 书写格式不对 两个方法的参数错了 getYb(int x), getYa(int x) 中间有空格的。else if 里面不要将y定义成int类型了,你在之前声明了是int类型了

enpterexpress
enpterexpress   2016.03.09 22:22

建议在编译器中写

bridge19
bridge19   2016.03.09 22:29

main 就是一个方法,里面不能嵌套方法定义

u010319440
u010319440   2016.03.09 22:30
baidu_33430214
baidu_33430214   2016.03.10 09:10

简而言之:方法里面不能再定义方法。把后两个static方法放到main()外面来。

sinat_31621401
sinat_31621401   2016.03.10 10:09

图片说明这是我改了之后的代码,还是报错static int getYa这一句。快帮小弟看看

dcxy0
dcxy0   Ds   Rxr 2016.03.10 10:16

先用idea或者eclipse写吧,用sublime text写也可以,别用记事本写。

共13条数据 1 尾页
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!