Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 有人能告诉我为什么calculateCoin函数没有出现吗?_Java - Fatal编程技术网

Java 有人能告诉我为什么calculateCoin函数没有出现吗?

Java 有人能告诉我为什么calculateCoin函数没有出现吗?,java,Java,有人能帮我解释一下为什么calculateCoin函数没有出现吗?基本上,它所做的是,计算硬币,这是随机产生的drawMap函数在20%的机会 我所做的但不确定是否正确的是,我在drawMap函数中调用了calculateCoin函数,然后在main中调用了drawMap public static void main(String[] args) { Main main = new Main(); System.out.println(main.drawMap()); }

有人能帮我解释一下为什么calculateCoin函数没有出现吗?基本上,它所做的是,计算硬币,这是随机产生的drawMap函数在20%的机会

我所做的但不确定是否正确的是,我在drawMap函数中调用了calculateCoin函数,然后在main中调用了drawMap

public static void main(String[] args) {
    Main main = new Main();

    System.out.println(main.drawMap());
}

public int[][] drawMap(){
    int[][] map = new int[5][5];
    char coin = 'o';

    for(int i =0; i<map.length; i++){
        for(int j =0; j<map[i].length; j++){
            map[i][j] = (int)(Math.random()*10);
            if(map[i][j]<2){
                System.out.print(coin+ " ");
            }
            else
            System.out.print("*"+ " ");
        }
        System.out.println("");
    }

    calculateCoin(map, coin);
    System.out.println("");

    return map;
}

public int calculateCoin(int[][] map, char coin){
    int result = 0;

    for(int i = 0; i<map.length; i++){
        for(int j = 0; j<map[i].length; j++){
            if(map[i][j] == coin){
                result++;
            }
        }
    }
    return result;
}

publicstaticvoidmain(字符串[]args){
Main Main=新Main();
System.out.println(main.drawMap());
}
公共int[]drawMap(){
int[]map=新int[5][5];
字符硬币='o';

对于(inti=0;i试试这个,但基本上你声明的是类的类型而不是方法

public class dave {
public static void main(String[] args) {
    dave main = new dave();
    System.out.println(dave.drawMap());
}

public static int[][] drawMap() {
    int[][] map = new int[5][5];
    char coin = 'o';

    for (int i = 0; i < map.length; i++) {
        for (int j = 0; j < map[i].length; j++) {
            map[i][j] = (int) (Math.random() * 10);
            if (map[i][j] < 2) {
                System.out.print(coin + " ");
            } else
                System.out.print("*" + " ");
        }
        System.out.println("");
    }

    calculateCoin(map, coin);
    System.out.println("");

    return map;
}

public static int calculateCoin(int[][] map, char coin) {
    int result = 0;
    for (int i = 0; i < map.length; i++) {
        for (int j = 0; j < map[i].length; j++) {
            if (map[i][j] == coin) {
                result++;
            }
        }
    }
    return result;
}
公共类{
公共静态void main(字符串[]args){
dave main=新的dave();
System.out.println(dave.drawMap());
}
公共静态int[]drawMap(){
int[]map=新int[5][5];
字符硬币='o';
对于(int i=0;i

}

函数实际上正在被调用,但您从中返回的值没有存储在任何变量中。如果您希望在打印映射后发生什么,请将调用结果存储在变量中,然后打印它

int calculatedCoin = calculateCoin(map, coin);
System.out.println("Calculated coin: " + calculatedCoin)

不确定“显示”是什么意思,但调用
calculateCoin
并放弃结果(即,不将返回值分配给任何变量)我真的不明白,你说我声明一个类的类型而不是一个方法是什么意思?哪一部分?啊,对了,我只是没有打印函数中的内容,对吗?为什么我一直缺少这一部分…所以在int函数中,RETURN的意思是只将它返回给调用函数的人,但实际上不会自动打印出来T