java - 未找到变量结果

标签 java bluej

程序非常简单,而且是自布置的,所以不,这不是作业。

用户应该输入三个数字,显示数字的平方并显示数字的总和。

import java.util.Scanner;
public class CompSquares {
    public static void main (String args[]) {
        Scanner s= new Scanner( System.in); 
        int num1;
        System.out.println(" Enter a number please.");
        num1 = s.nextInt();
        int num2;
        System.out.println("One more."); 
        num2 = s.nextInt();
        int num3;
        System.out.println("Last one.");
        num3 = s.nextInt();

        System.out.println( "The numbers squared are " + Square( num1, num2, num3));
        System.out.println("The sum of these numbers is " + Sum(result)); 
    }

    private static double Square ( int num1, int num2, int num3) {

        if ( num1 > 0) {
            num1 *= num1;
            System.out.println (num1);} 
            else {
                System.out.println( "Enter a correct number, please.");
            }
            if ( num2 > 0){ 
                 num2 *= num2;
                System.out.println (num2); }
                else {
                    System.out.println("Really? Again. Do the right thing this time, jeez.");
                }
            if ( num3 > 0){
                num3*=num3;
                System.out.println (num3);}
                else {
                    System.out.println("Just make it more then one!!");
                }
            }

    public static int Sum ( int num1, int num2, int num3, int result) {
        result = num1 + num2 + num3;
        System.out.println(result);
    }
}            

最佳答案

在主方法中:

 System.out.println("The sum of these numbers is " + Sum(result)); 

result尚未在 main() 可见的任何范围内声明.

而不是 Sum采取int result参数,我认为你的意思是 Sumreturn结果。在不给您完整答案的情况下,从这里开始:

public static int Sum (int num1, int num2, int num3) {
    int result = num1 + num2 + num3;
    System.out.println(result);
    return result;
}

这还将解决另一个编译器错误(原始代码中的 Sum 不会返回任何内容,但它声明的返回类型是 int )。

关于java - 未找到变量结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43244621/

相关文章:

Java:如何区分wait()中的虚假唤醒和超时

java - Thymeleaf SpringEL 表达式

在lenskit和jdk 10中找不到javax.annotation.PreDestroy类

java - 最大和最小程序的数组索引越界异常

java - VM 在静态方法上终止

java - 无法从数字单元格获取字符串值?

Java,等待子进程退出

java - 如何更改此代码,使其仅打印每个素因数的一份副本

java - IF 条件下无法识别 instanceOf 的继承问题

java - 如何在java中添加到数组中,然后使用for循环打印出来?