Java无法运行,不知道问题在哪儿

问题遇到的现象和发生背景

Java写完不知道什么情况就不能运行,是不是哪一步出问题了

用代码块功能插入代码,请勿粘贴截图

package hejianji;

import com.sun.xml.internal.ws.api.model.wsdl.WSDLOutput;
public class Hejianji {
public int subtractProductAndSum(int n) {

    int sum1 = 1;
    int sum2 = 0;
    int i = Math.abs(n);
    while (i != 0) {
        sum1 *= i % 10;
        sum2 += i % 10;
        i /= 10;
    }
    return sum1 - sum2;

}

}

运行结果及报错内容

img

我想要达到的结果

img

你要有main方法才能执行呀

public class Hejianji       {
    public int subtractProductAndSum(int n) {
 
        int sum1 = 1;
        int sum2 = 0;
        int i = Math.abs(n);
        while (i != 0) {
            sum1 *= i % 10;
            sum2 += i % 10;
            i /= 10;
        }
        return sum1 - sum2;
 
    }
 
 
    public static void main(String[] args) {
        Hejianji  test=new Hejianji ();
       int a= test.subtractProductAndSum(234);
        System.out.println(a);
    }
 
}

结果

img

img


帮题主优化了下:


import java.util.Scanner;

public class Hejianji {
    public int subtractProductAndSum(int n) {
        int sum1 = 1;
        int sum2 = 0;
        int i = Math.abs(n);
        while (i != 0) {
            sum1 *= i % 10;
            sum2 += i % 10;
            i /= 10;
        }
        return sum1 - sum2;
    }

    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入一个整数:");
        Hejianji test = new Hejianji();// 创建Hejianji对象;
        System.out.println("经过subtractProductAndSum方法运算后的结果:"+test.subtractProductAndSum(sc.nextInt()));// 调用subtractProductAndSum方法
    }
}