Java 如何用方法编写这个程序

Java 如何用方法编写这个程序,java,methods,Java,Methods,这是我写的用来检查Armstrong编号的程序。我如何使用方法编写它 例如,如果我想将其分解为以下4种方法 void getnum() 整数检查() 无效分配 以及启用该任务的主要方法 import java.util.Scanner; class Arm_check1 { public static void main(String args[]) { int n=0; int ori; int z; Syste

这是我写的用来检查Armstrong编号的程序。我如何使用方法编写它

例如,如果我想将其分解为以下4种方法

  • void getnum()
  • 整数检查()
  • 无效分配
  • 以及启用该任务的主要方法

    import java.util.Scanner;
    class Arm_check1
    {
        public static void main(String args[])
        {
            int n=0;
            int ori;
            int z;
            System.out.println("Enter a No.");
            Scanner Prakhar=new Scanner(System.in);
            n=Prakhar.nextInt();
            int digits=(int)Math.floor(Math.log10(n)+1);
            System.out.println("No of Digits :"+digits);
            int a[]=new int[digits];
            int sum=0;
            ori=n;
            for(int i=0;i<digits;i++)
            {
                a[i]=n%10;
                n=n/10;
            }
            for(int i=0;i<a.length;i++)
            {
                sum=(int)Math.pow(a[i],3)+sum;
            }
            System.out.println(sum);
            System.out.println(ori);
            if(sum == ori)
            {
                System.out.println("No. is Armstrong");
            }
            else
                System.out.println("No. is not Armstrong");
        }
    }
    
    这是我在Yluns回答后再次写的

        import java.util.Scanner;
        class Arm_check2
        {
            int n=0;
            int ori;
            int sum;
            void getnum()
            {
                System.out.println("Enter a No.");
                Scanner Prakhar=new Scanner(System.in);
                n=Prakhar.nextInt();
                check();
            }
    
            int check()
            {
                int digits=(int)Math.floor(Math.log10(n)+1);
                System.out.println("No of Digits :"+digits);
                int a[]=new int[digits];
                int sum=0;
                ori=n;
                for(int i=0;i<digits;i++)
                {
                    a[i]=n%10;
                    n=n/10;
                }
                for(int i=0;i<a.length;i++)
                {
                    sum=(int)Math.pow(a[i],3)+sum;
                }
                dispsum(sum);
                return sum;
    
            }
    
            void dispsum(int sum)
            {
                System.out.println(sum);
                System.out.println(ori);
                if(sum == ori)
                {
                    System.out.println("No. is Armstrong");
                }
                else
                    System.out.println("No. is not Armstrong");
            }
            void main()
            {
                getnum();
            }
        }
    
    import java.util.Scanner;
    等级Arm_检查2
    {
    int n=0;
    INTORI;
    整数和;
    void getnum()
    {
    System.out.println(“输入编号”);
    扫描仪Prakar=新扫描仪(System.in);
    n=prakar.nextInt();
    检查();
    }
    整数检查()
    {
    整数位数=(整数)数学地板(数学log10(n)+1);
    System.out.println(“位数:+位数);
    整数a[]=新整数[位数];
    整数和=0;
    ori=n;
    
    对于(inti=0;i,因为我没有看到合理的尝试,所以我不会为您编写任何示例代码。不过,我会给您提供这些参考以供阅读

    阅读有关
    方法的内容
    :。它们的声明格式如下:

    (private/public) static (return type) (name of method) (parameters){
        //method body
    }
    

    您的主方法应该处理对其他方法的调用。

    您的主方法必须保持以下状态:

    public static void main(String[] args){
      // function body
    }
    
    我知道你已经把旧函数体拆分成了新函数,为什么不试着按你需要的顺序调用所有这些新函数呢


    您将其中一个声明为
    int
    返回类型,因此您必须存储该结果才能使代码的最后一部分正常工作。

    为什么不先自己尝试一下呢。否则,在这里发布它而不显示您的努力,只会使您失去宝贵的学习机会。这看起来像是一个家庭作业问题。这是简单,亲爱的。只要打破代码我理解使用方法的概念,只是不知道如何使用它。任何帮助都将不胜感激:)请记住,这不是家庭作业,而是我在某个地方找到的一个练习问题
    public static void main(String[] args){
      // function body
    }