繁体   English   中英

如何获取方法作为返回值?

[英]How can I get a method as a return value?

我的作业是我的动物“螃蟹”应该随机转动。 我随机选择的数字“n”应该是转弯的触发器。 对不起,我是编程初学者。

我试图在 boolean、int 和 void 之间切换。 它从来没有奏效。

import greenfoot.*; 

public class Crab extends Animal
{     
    public int zeahler; 
    public int n;* 

    public void act()
    {
       zeahler += zeahler; //zeahler wird hochgezählt
    }

    public boolean aendern()
    {
        n = Greenfoot.getRandomNumber(51);
        if(zeahler> n)  
        return turn(40);
    }

}

我预计螃蟹会转 40 度,但出现错误:不兼容的类型:void 无法转换为 boolean

我认为你的 turn(int) 方法应该返回 void。 但是,在您的 aendern() 方法中,您告诉她在返回 boolean 时返回 void。 因此出现此错误:“void 无法转换为布尔值”

你可以试试这个:


public boolean aendern()
    {   
        boolean test = false;
        n = Greenfoot.getRandomNumber(51);
        if(zeahler> n) { 
         turn(40);
         test = true;
        }
       return test ;
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM