2013-11-21 2 views
0

이름 뱅크에서 16 개의 다른 행성에 대한 이름을 생성하여 행성에 할당하려는 게임을 만듭니다. 아래에 소개 된 행성 및 이름 생성 논리에 대한 배열을 만들었습니다.배열의 항목에 목록의 항목 할당

Planet[] planetArray = new Planet[16]; 

    public static void NameGeneration() 
    { 
     List<String> planetNames = new List<String>() 
     { 
      "Bak'hur", "Etonia",  "Laurellan", 
      "Ragki",  "Metiope",  "Defel", 
      "Liehne", "Rykhan",  "Heito", 
      "Makha",  "Cerbi",  "Helios", 
      "Luruguan", "Chawnos",  "T'hig", 
      "Blana",  "Pergate V", "Shemon III", 
      "Yokteth", "Letry",  "Last Besgino", 
      "Ayus",  "Alterus",  "Qurenos" 

     }; 

    List<Tuple<int>> instances = new List<Tuple<int>>(); 
    List<string> generatedNames = new List<string>(); 

    Random random = new Random(); 
    int planetName; 


      //generating 16 names 
     while(instances.Count < 16) 
     { 
      planetName = random.Next(0, planetNames.Count); 

      Tuple<int> tuple = new Tuple<int>(planetName); 

      if (instances.Contains(tuple)) 
      { 
       instances.Add(tuple); 
      } 
     } 

     foreach (var tuple in instances) 
     { 
      generatedNames.Add(string.Format("{0}", planetNames[tuple.Item1])); 
     } 

     foreach (var n in generatedNames) 
     { 

     } 


    } 

난 정말이 목록에서 선택하고 수동으로 할당하거나 aswell 지구를 무작위 화 생각했지만 나는 여전히 내 트랙에 갇혀 거라고하지만, 여기에서 어디로 모른다.

도움이나 조언을 보내 주시면 감사하겠습니다. 고맙습니다.

var generatedNames = planetNames.OrderBy(n => random.Next()).Take(16).ToList(); 
+2

왜'int' 대신'Tuple '입니까? –

+0

당신의 방법으로 외부에서'새로운 무작위'를 선언하는 것을 시도하십시오. – spajce

+0

프로그래밍에 익숙하지 않아 튜플 을 사용했고 과외지도 교사가 사용하도록 제안했습니다. –

답변

2

이 코드가 같은 일을 생각합니다. 뭔가 같은 :

planetArray = generatedNames.Select(x=>new Planet(x)).ToArray(); 

왜, 당신은 왜 터플의 목록을 사용합니까?. List를 직접 사용할 수 있습니다.

+0

내가 사용한 모든 논리에 대한 속기가 그 것입니까? –

+0

@ Ryan'Maverick'Buxton 정확히 –

+1

품질, 고마워요. –

0

당신은 무작위 후, 행성을 만들 수 Linq를 사용할 수 있습니다 : 무작위로 16 행성의 이름을 고른 목록을 만듭니다 -

라이언

+0

튜플 은 프로그래밍을 처음 사용하기 때문에 튜터가 사용하라고 제안했습니다. List에서 직접 어떻게 사용합니까? –

+0

새로운 플래닛 (x) - 오류가 발생했습니다 '1 인수가 필요한 생성자가 포함되어 있지 않습니다. 논쟁은 무엇입니까? –

관련 문제