无法从main方法输出值

时间:2014-03-07 12:33:29

标签: java java-io

我是编码的新手,我在Java中有一个问题。这是我的作业问题:编写一个调用Sum100方法的程序,该方法返回1到100之间的整数之和。我写了我的方法

    public int sum100()
     {
        int sum = 0;
        for (int count=1; count <= 100; count++)
        sum += count;
        return sum;
     }

这是我的问题:我可以从这里打印出我的答案,还是我需要像这样把一些东西放在主要的

    public static void main(String[] args) {

    System.out.println(sum100());//not working

}    

6 个答案:

答案 0 :(得分:1)

如果您只是将sum100方法更改为static,则您的代码可以正常运行:

public static int sum100()
 {
    int sum = 0;
    for (int count=1; count <= 100; count++)
    sum += count;
    return sum;
 }

如果您需要有关该主题的更多信息,我建议您阅读Java教程部分Understanding Class Members

答案 1 :(得分:0)

你可以在任何地方进行sysout,但我建议你在函数外部输出,因为你可能希望将记录与其余代码分开(如果代码的另一部分想要调用这个函数但不记录任何东西)。

答案 2 :(得分:0)

Main是静态的,它不能调用另一个非静态的方法,它可以提供给一个对象,而不是一个类。创建一个类的对象并使用该对象调用该方法

class myclass{
public static void main(String[] args) {
 myclass obj=new myclass();
System.out.println(obj.sum100());//it will  working

}    
public int sum100()
   {
    int sum = 0;
    for (int count=1; count <= 100; count++)
    sum += count;
    return sum;
   }

 }

答案 3 :(得分:0)

您的方法main静态,只有当它引用object时才能调用非静态的其他方法,而不是class

因此,您应该实例化class对象,并调用此对象的非静态方法,或者制作sum100方法static

答案 4 :(得分:0)

使用如下 - 它对我有效。

class SumClass {
    public int sum100() {
        int sum = 0;
        for (int count = 1; count <= 100; count++)
            sum += count;
        return sum;
    }
    public static void main(String[] args) {
        SumClass obj = new SumClass();
        System.out.println("Sum->" + obj.sum100());

    }


}

答案 5 :(得分:0)

class Yourclass {

public static void main(String[] args) {
    SumClass obj = new SumClass();
    int currrent_sum=obj.sun100();
    System.out.println("Sum of 100 numbers is: " +current_sum);

}
public int sum100() {
    int sum = 0;
    for (int count = 1; count <= 100; count++)
        sum += count;
    return sum;
}

}