Java 方法中的数组有什么问题?

Java 方法中的数组有什么问题?,java,arrays,Java,Arrays,我不确定我做错了什么。我正在使用Java,我的控制台说它找不到符号getBattingAverage.batters(I)。击球手是一个由15个名字组成的数组,在击球时,前击球手:安东尼·里佐54 16 public double getBattingAverage() { if(atBats > 0) return (double) hits / (double) atBats; else return 0.0; } public double ge

我不确定我做错了什么。我正在使用Java,我的控制台说它找不到符号getBattingAverage.batters(I)。击球手是一个由15个名字组成的数组,在击球时,前击球手:安东尼·里佐54 16

public double getBattingAverage()
   {
   if(atBats > 0)
   return (double) hits / (double) atBats;
  else
   return 0.0; 
   }

public double getHighestBattingAverage()
   {
      for( i = 0; i < batters.length; i++)
         {
            j = getBattingAverage.batters(i);
            if ( maxERA < j)
               maxERA = j;

   }
public-double-getBattingAverage()
{
如果(atBats>0)
回击(双打)/(双打)击球;
其他的
返回0.0;
}
公共双最高击球平均数()
{
对于(i=0;i
此处的语法:

 j = getBattingAverage.batters(i);
应该是-对数组元素的方法调用:

j = batters[i].getBattingAverage();
或-对列表元素的方法调用

j = batters.get(i).getBattingAverage();
或-使用数组元素的方法调用

j = getBattingAverage(batters[i]);
比如说


但老实说,这里真正的答案是:不要在语法方面反复尝试。学习书籍/教程,了解这些东西应该如何工作。

这是无效的Java-不会编译。从代码中看不出您的意图

我看到您定义了一个函数getBattingAverage()。假设您在其他地方定义了atBats和hits,这没关系。可能是包含对象中的实例字段。请将大括号与
if
语句一起使用

在getHighestBattingAverage中的for循环中,您将batters视为一个数组。然后您说
getBattingAverage.batters(i)
,就好像
getBattingAverage
是一个类的对象,该类具有
batters()
方法。j来自哪里?maxERA来自哪里

Java有很好的文档。这是关于、和的部分。这是我自学Java的方式

您可能会发现使用IntelliJ这样的IDE很有帮助,因为它可以告诉您键入时的错误,并为您提供编写更好代码的提示。祝您学习Java好运


综上所述,理想的StackOverflow问题有一个问题。这看起来像是你的第一个Java程序,看起来是一个很好的尝试。但是StackOverflow是针对更具体的问题的。像“什么都不管用,这里有一个不完整的摘录,我需要解释”将以过于宽泛的方式结束。事实上,我可能会投票结束这个问题,因为它的格式不够好,或者实际上没有一个特定的问题。

batters
是一个数组,而不是一个方法。学习java编程的入门课程。这里有很多问题——一个问题解决不了太多问题——但是请,请进入ha始终为
if()使用大括号的位
阻塞,即使它只是一个语句。你会为自己省去很多困惑。
i
j
在哪里定义?请显示所有变量的定义位置。如果我可以问的话-你接受了我的答案,后来又不接受我的答案。这都很好;我只是想知道这是故意的,还是偶然的?