2016-05-04 9 views
1
public void SetupShip() 
    { 
     ship1 = new Ship("Olympic Countess"); 
     ArrayList groupA = new ArrayList(); 
     for (int i = 0; i < 10; i++) 
     { 
      groupA.Add(new room(5000, "A" + (i + 1))); 
     } 
     ArrayList groupB = new ArrayList(); 
     for (int i = 0; i < 10; i++) 
     { 
      groupB.Add(new room(4000, "B" + (i + 1))); 
     } 
    } 

Anstatt dieselben Bedingungen zu verwenden, um verschiedene Objekte wie oben beschrieben zu schleifen, kann ich diesen neuen Raum innerhalb der gleichen Schleife hinzufügen, da die Schleifenbedingungen gleich sind. Vielen Dank.Kann ich eine einzelne for-Schleife für zwei verschiedene deklarierte Objekte verwenden?

+0

Ja, Sie können es verwenden – Mostafiz

+0

Haben Sie * versucht * es? –

+0

Danke, ich habe es versucht und es funktioniert. –

Antwort

0

Es funktioniert

public void SetupShip() 
    { 
     ship1 = new Ship("Olympic Countess"); 
     ArrayList groupA = new ArrayList(); 
     ArrayList groupB = new ArrayList(); 
     for (int i = 0; i < 10; i++) 
     { 
      groupA.Add(new room(5000, "A" + (i + 1))); 
      groupB.Add(new room(4000, "B" + (i + 1))); 
     } 

    } 
1

Ich möchte lieber nicht ein veraltetArrayList verwenden, aber List<room>; Wenn Sie benötigen Elemente erzeugen, dann erzeugen sie:

public void SetupShip() { 
    ship1 = new Ship("Olympic Countess"); 

    List<room> groupA = Enumerable 
    .Range(1, 9) 
    .Select(i => new room(5000, "A" + i)) 
    .ToList(); 

    List<room> groupB = Enumerable 
    .Range(1, 9) 
    .Select(i => new room(4000, "B" + i)) 
    .ToList(); 
} 

P. S. Natürlich können Sie zwei Elemente im gleichen Schleife hinzufügen, das heißt

for (int i = 0; i < 10; i++) { 
    groupA.Add(new room(5000, "A" + (i + 1))); 
    groupB.Add(new room(4000, "B" + (i + 1))); 
} 

aber ich schlage vor, nicht aber tun die Liste zu erzeugen.

Verwandte Themen