簡體   English   中英

在理解Java代碼時遇到問題?

[英]Problem understanding java code?

我不懂這段代碼,您能解釋一下嗎

grid是一個int[][] distbest被初始化

double distbest
int turn = 60;
if (g > 1)
   this.grid = turn(distbest * turn).grid;
else
   this.grid = turn(-distbest * turn).grid;

該代碼非常簡單,所以您不理解它呢?

也許讓您感到困惑的是, turn用作變量名和方法名這兩種turn(distbest * turn)是方法調用,並且返回對象的grid字段已分配給this.grid

除了是int類型的turn變量之外,還必須有一個未顯示的int[][] turn(double)方法。 通常,將方法命名為與變量相同的做法是錯誤的做法,因為它會導致您正遇到的混亂類型。 如果可能,考慮者重命名變量或方法。

這個部分:

turn(distbest * turn)

意味着有一個函數turn返回一個對象 ,該對象包含以double為參數的grid 代碼中未顯示的是返回類型。

因此,我可以說的是,該函數的聲明類似於

Grid turn(double d);

Grid (虛擬的)具有int[][] gridpublic屬性(這就是turn(distbest * turn).grid可能的原因)。

我將所有這些都基於上面列出的示例代碼。 另一turn是參數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM