【问题标题】:How to run this method in Java?如何在 Java 中运行此方法?
【发布时间】:2022-01-07 06:37:02
【问题描述】:

我正在尝试运行此代码以返回给定数组中的最大值。我是 Java 新手,因此我将不胜感激任何调试技巧。

public class maxVal {


public static int max(int[] m) {
    int maxSoFar=m[0],i;

    for (i=1; i<m.length;i++) { 

        if (m[i]>maxSoFar)
            maxSoFar=m[i];
            
    }        
    return maxSoFar;
        

}
public static void main(String[] args) {
   int[] numbers = new int[]{9, 2, 15, 2, 22, 10, 6};  
   max(numbers); 
}

}

【问题讨论】:

  • max 方法返回一个值,因此您可能需要将其打印出来。
  • 你实际上是在运行它,你只是忽略了返回值
  • 所以我应该打印出 maxSoFar 值而不是返回它?还是两者兼而有之?
  • 不,你应该打印你刚刚返回的值

标签: java methods


【解决方案1】:

我认为您需要在控制台中查看答案?

当您运行max 方法时,它将返回给定数组中的最大值。所以要在控制台中看到它,你必须使用System.out.println() 打印它。或者您也可以将其分配给另一个变量以在其他地方使用它。

您的代码实际上正在运行,但您忽略了 max 方法的返回值。

这是您的代码,带有System.out.println(),用于打印最大值

public class maxVal {


 public static int max(int[] m) {
     int maxSoFar=m[0],I;

     for (i=1; i<m.length;i++) { 

         if (m[i]>maxSoFar)
             maxSoFar=m[I];
             
     }        
     return maxSoFar;
       
 }

 public static void main(String[] args) {
    int[] numbers = new int[]{9, 2, 15, 2, 22, 10, 6};  
    
    int maxVal = max(numbers); 
    System.out.println(maxVal);

 }

}

【讨论】:

  • 我没有更改代码。 :)。只需添加 sout
  • 我的错,还在醒来,我错过了其他方法的主要签名:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-05-01
  • 1970-01-01
  • 2014-02-07
  • 2020-01-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多