2017-04-05 78 views
0

很新,這個東西和我這個問題所困擾1個變量...我應該創建一個具有許多實例變量。例如在我的情況下,我需要向用戶詢問出發城市和到達城市。使用更多的價值

System.out.println("Vnesite ime mesta kamor potujete: "); // here is where i ask for the first city 
    String mesto = scan.next(); 
    System.out.println("Vnesite ime države kamor potujete: "); 
    String drzava = scan.next(); 
    System.out.println("Vnesite ime mesta iz katerega potujete: "); //here is where i ask for the second city 
    String mesto2 = scan.next(); 
    System.out.println("Vnesite ime države iz katere potujete: "); 
    String drzava2 = scan.next(); 


    Kraj kraj = new Kraj(mesto, drzava); 

,這裏是其中變量的情況下,應存放。

public class Kraj { 

private String kraj; // this variable is supposed to have many instances 
private String drzava; 

public Kraj(String kraj, String drzava) 
{ 
    this.kraj = kraj; 
    this.drzava = drzava; 
} 

public String getkraj () 
{ 
    return kraj; 
} 

public void setkraj (String kraj) 
{ 
    this.kraj = kraj; 
} 

public String getdrzava () 
{ 
    return drzava; 
} 

public void setdrzava (String drzava) 
{ 
    this.drzava = drzava; 
} 

我試圖創建第二個變量,但它並沒有解決任何問題(如果什麼旅行者想要讓停在中間目標,然後進行最終的目的地)。進出口尋找解釋如果可能解決不了問題:)

在此先感謝球員/女孩!

+0

既可以存儲'kraj'對象列表,也可以存儲'String' kraj和drzavas列表。 – Compass

回答

0

你可以有String列表存儲多個目的地,如下圖所示:

public class Kraj { 

    private List<String> kraj;//now stores multiple destinations 

    public List<String> getkraj() { 
    return kraj; 
    } 

    public void setkraj(List<String> kraj) { 
     this.kraj = kraj; 
    } 

    //add drzava and it's setters and getters 

} 

所以,在你的主代碼,你需要將它們收集到一個數組中,並通過如下圖所示:

List<String> destinations = new ArrayList<>(); 
System.out.println("Vnesite ime mesta kamor potujete: "); 
    String mesto = scan.next(); 
    System.out.println("Vnesite ime države kamor potujete: "); 
    String drzava = scan.next(); 
    destinations.add(drzava); 
    System.out.println("Vnesite ime mesta iz katerega potujete: "); 
    String mesto2 = scan.next(); 
    System.out.println("Vnesite ime države iz katere potujete: "); 
    String drzava2 = scan.next(); 
    destinations.add(drzava2); 

    Kraj kraj = new Kraj(mesto, destinations); 
+0

我建議使用List而不是數組,所以我們可以添加他們想要的項目。 – Yussef

+0

是的,你是對的'List'更有scense,謝謝 – developer

+0

非常感謝你們! – User2343

0

你可以做到這一點。

這裏你存儲1日的兩個變量。

Kraj kraj = new Kraj(mesto, drzava); 

然後你可以創建你的類的另一個對象,並存儲剩下的兩個變量。

Kraj kraj2 = new Kraj(mesto2, drzava2); 
+0

我試過類似的東西,但如果我知道這個權利,這隻會讓你存儲另外2個變量。如果用戶想要存儲10個變量呢?或者我錯了? – User2343

+0

你的課堂只設計爲10個變量取兩個變量,你可以創建對象數組並存儲在上面的答案中。 – Omore