微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在另一种方法中访问该方法?

如何解决如何在另一种方法中访问该方法?

在此代码中,我无法在 facto1() 方法调用 user() 方法,但我无法访问 n 的值循环

import java.util.*;    
public class fecto {
    //Scanner sc = new Scanner(system.in);
    //int n;
    
    public int user() {
        Scanner sc = new Scanner(system.in);
        int n;
        System.out.println("Enter the number:");
        n = sc.nextInt();
        return n;
    }
    
    public int facto1() {
        int i,fac = 1;
        //int p = user();
        //System.out.println(p);
        user()
        for (i = 0; i <= n; i++) {
            fac = fac * i;
        }
        return fac;
    }
    
    public static void main(String[] args) {
        fecto fe = new fecto();
        fe.facto1();
    }
}

解决方法

user() 的调用不在本地存储结果。改变

//int p = user();
//System.out.println(p);
user()
for (i = 0; i <= n; i++) {

int n = user(); // <-- you want `n`,not `p`.
for (i = 1; i <= n; i++) { // <-- 0 * x == 0,do not start with i = 0

此外,在 main 中,您不会打印结果。

fecto fe = new fecto();
int result = fe.facto1();
System.out.println(result);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。