2011-02-28 64 views
0
List[K] = new Station(Location, Temp, Name); 

在一種方法中,我輸入位置和名稱的值。在後面的方法中,我想遍歷每個位置並分配一個唯一的Temp。java基本陣列問題

 public void Post() 
{ 
    double Temp = 0; 
    int K; 
    for(K = 0; K < Count ; K++) 
    System.out.print(" " + List[K].GetLocation() + ": "); 
    System.out.println("Enter Temperature"); 
    Temp = Input.nextDouble(); 

} 

這只是簡單地將所有的位置倒出來,然後它會提示溫度並接受它。但溫度甚至沒有分配給陣列中的最後一個值。

+2

看看語法和命名約定是很痛苦的。 http://www.oracle.com/technetwork/java/codeconv-138413.html – 2011-02-28 05:31:38

回答

1

將大括號放在for循環體上。

public void Post() 
{ 
    double Temp = 0; 
    int K; 
    for(K = 0; K < Count ; K++) { 
     System.out.print(" " + List[K].GetLocation() + ": "); 
     System.out.println("Enter Temperature"); 
     Temp = Input.nextDouble(); 
    } 
} 

順便說一句,你應該讀standard Java conventions

+0

你是正確的大括號固定它。我也必須添加這個來將新的值賦給數組。列表[K] .SetTemp(臨時); – chief 2011-02-28 05:36:28

1

這是你想要做的嗎?打印列表中的每個位置並向用戶請求溫度?

public void Post() 
{ 
double Temp = 0; 
int K; 
for(K = 0; K < Count ; K++) 
{ 
    System.out.print(" " + List[K].GetLocation() + ": "); 
    System.out.println("Enter Temperature"); 
    Temp = Input.nextDouble(); 
} 
} 
1

爲什麼溫度在第一行初始化?爲什麼在最後一行有一個分配?它沒有效果。

你爲什麼要在循環之外聲明K?Codeconventions要求提供屬性,參數,變量和方法的小寫字母。

list[k] = new Station (location, temp, name); 
// 

public void post() 
{ 
    for (int k = 0; k < count; k++) 
     System.out.print (" " + list[k].getLocation() + ": "); 
    System.out.println ("Enter Temperature"); 
    double Temp = Input.nextDouble(); 
} 

在一種方法我在位置和名稱值進入。在後面的方法中,我想遍歷每個位置並分配一個唯一的Temp。

嗯 - 你循環通過電臺,而不是地點,你呢?

但溫度甚至沒有分配給數組中的最後一個值。

哪個數組?該數組稱爲列表?你從來沒有分配臨時的東西,是嗎?

你在火車站有一個二傳手嗎?它是可寫屬性嗎?

list[count-1].setTemp (temp); // or 
list[count-1].temp = temp; 

可能會有幫助。