2015-04-12 79 views
-1

我有一個需要字符串的對象;不過,我需要在循環之外啓動此對象,以便每當循環重複時都不會創建新實例。但同時我需要將循環產生的字符串放入對象中。我怎樣才能做到這一點?這裏是什麼,我試圖做一個例子:在需要字符串的循環外部創建新對象

Scanner input = new Scanner (file) 
String word = ""; 
While (input.hasNext()){ 
word = input.next() 
object myObject = new object(word) // this is what I want to put outside the loop using the object 'word' 
} 
+2

那麼應該用哪個單詞創建對象?輸入中的第一個?最後一個? –

+0

你想把所有的字符串(循環)放入你的對象? – coder

+0

word(一個字符串)應該用來創建對象 –

回答

0

假設你只需要您的object類的一個實例,用一個setter來改變循環內的字:

Scanner input = new Scanner (file) 
String word = ""; 
object myObject = new object(word); 
while (input.hasNext()){ 
    word = input.next() 
    myObject.setWord(word); 
} 

我假設在你的實際循環中有更多的邏輯,這與myObject有關。否則,撥打setWord毫無意義。

+0

即時通訊對不起,我不明白爲什麼我會用setter,我試圖從insde循環中獲取單詞,然後在循環之外使用它。是的,它有更多的邏輯,我不希望它留在循環內的原因是因爲每當我的循環頭文件計算爲true時,就會創建一個新的對象,但我只希望該對象被創建一次。 –

+0

@AlfredoSequeida在循環的每次迭代中,您爲'word'分配一個新值。當你存在循環時,你期望你的'object'包含哪一個值?如果您不想在循環的每次迭代中創建對象,則必須在循環之前創建它,這意味着在循環內部傳遞「詞」的唯一方法是通過setter方法。 – Eran