当前位置: 首页 > 知识库问答 >
问题:

我遇到了以下错误。我看到其他人也有类似的问题,然而,我还没有找到解决办法。任何建议[关闭]

淳于飞鸾
2023-03-14

class Math{
    public  static double PI = 3.14;
    public static int abs(int x){
        return Math.abs(x);
    }
    public static int add(int x, int y){
        return x+y;
    }
    public static int subtract(int x,int y){
        return x-y;
    }
    public static int min(int x, int y){
        return Math.min(x,y);
    }
    public static int max(int x, int y){
        return Math.max(x,y);
    }
    public static int pow(int x, int y){
        return Math.pow(x,y);
    } 
    public static void main(String[] args){
        System.out.println(Math.PI);
        System.out.println("Yen 1");
        System.out.println(Math.abs(5));
        System.out.println("the result of the addition is equals: "+Math.add(3, 8));
        System.out.println("The result of 9 minus 7 equals: "+Math.subtract(9, 7));
        System.out.println("Smaller number: "+Math.min(3, 6));
        System.out.println("power is: "+ Math.pow(2, 5));
        System.out.println("Big number in 2 numbers is: "+ Math.max(7, 909));
    }
}`

共有1个答案

毋琪
2023-03-14

正如《我如何问一个好问题》中所说的那样?

不要发布代码、数据、错误消息等的图像。

尤其与您发布的图像相关,因为它不包括真正的异常java.lang.StackOverflowError。Java编译器认为方法abs是递归方法。方法minmaxpow也是如此。因此,当您调用方法ABS时,从方法main,方法ABS只是一次又一次地调用自己,直到[方法调用]堆栈满为止。当我运行您的代码时,方法abs调用了自己1,023次。

public class Math {
    public static double PI = 3.14;

    public static int abs(int x) {
        return java.lang.Math.abs(x);
    }

    public static int add(int x, int y) {
        return x + y;
    }

    public static int subtract(int x, int y) {
        return x - y;
    }

    public static int min(int x, int y) {
        return java.lang.Math.min(x, y);
    }

    public static int max(int x, int y) {
        return java.lang.Math.max(x, y);
    }

    public static int pow(int x, int y) {
        return (int) java.lang.Math.pow(x, y);
    }

    public static void main(String[] args) {
        System.out.println(Math.PI);
        System.out.println("Yen 1");
        System.out.println(Math.abs(5));
        System.out.println("the result of the addition is equals: " + Math.add(3, 8));
        System.out.println("The result of 9 minus 7 equals: " + Math.subtract(9, 7));
        System.out.println("Smaller number: " + Math.min(3, 6));
        System.out.println("power is: " + Math.pow(2, 5));
        System.out.println("Big number in 2 numbers is: " + Math.max(7, 909));
    }
}
 类似资料:
  • 这个程序应该输出 但是如果我输入的大小是4,我只输入这些值,但是如果我写的大小是4。。。它不需要我提供4个参数,而是需要3个参数并打印('',1,2,3) 请帮帮忙

  • 由于我工作的地方,我不允许使用截图,尽管它只是一个错误,反正。 星期五,我升级到Eclipse2021-03和AdoptoPsdk16。我的主要项目(ActivePivot webapp)成功地用Java8构建了,所以我回家的时候很高兴,并且准备星期一回来做主要的计划! 当我在repo中添加了较新的库时,它显然破坏了我的Java8项目。我认为这将是一个简单的情况,只是为许多库/文件夹添加版本标记,

  • 本文向大家介绍IOS json 解析遇到错误问题解决办法,包括了IOS json 解析遇到错误问题解决办法的使用技巧和注意事项,需要的朋友参考一下 概要: Error Domain=NSCocoaErrorDomain Code=3840 "The operation couldn't be completed. (Cocoa error 3840.)" (Unescaped control ch

  • 我以为我了解Docker。我把它理解为一种打包软件的方法,其中包含很多依赖项。。基本上创建一个小世界,在这个小世界里,软件的每一件事情都会得到处理。然后我在DockerHub上偶然发现了这个 https://hub.docker.com/_/busybox/ 这是BusyBox的一个映像,它是一个用于嵌入式系统的小型Linux二进制文件。然后上面的评论说: Busybox是真棒:)到目前为止,在整

  • org.springframework.beans.factory.beanCreationException:创建名为“student controller”的bean时出错:注入autowired依赖项失败;嵌套异常为org.springframework.beans.factory.BeanCreationException:无法自动连接字段:public edu.java.spring.d

  • LOAD DATA INFILE'/home/cloudera/desktople/sql DATA/customer.csv'替换到表Customers字段以‘结尾,行以'\n'结尾;