문제

  private void GetNewDeck_Click(object sender, EventArgs e)
    {
       string[] suit = { "C", "D", "H", "S" };
        string[] num = { "2", "3", "4", "5", "6", "7", "8", "9", "T", "J", "Q", "K", "A" };
        for (int j = 0; j < 4; j++)
        {
            for (int i = 0; i < 13; i++)
            {
               NewDecktextBox.Text + = (suit[j] , num[i]"\n");
            }
        }

    }
.

NewDeckTextBox.text 라인을 사용하는 GetNewDeck_Click Button.iam이있는 버튼을 클릭하면 Dultiline TextBox (NewDeckTextBox)의 새 카드의 새 카드를 표시하려고했습니다.

출력은

이어야합니다.
 C2 C3 C4 C5 C6 C7 C8 C9 C10 CJ CQ CK CA
 D2 D3 D4 D5 D6 D7 D8 D9 D10 DJ DQ DK DA
 H2 H3 H4 H5 H6 H7 H8 H9 H10 HJ HQ HK HA
 S2 S3 S4 S5 S6 S7 S8 S9 S10 SJ SQ SK SA
.

감사합니다

도움이 되었습니까?

해결책

이것은 조금 더 나아질 것입니다

StringBuilder sb = new StringBuilder();
foreach (String suit in new string[] { "C", "D", "H", "S" })
{
  foreach (string value in new String[] { "2", "3", "4", "5", "6", "7", "8", "9", "T", "J", "Q", "K", "A" } )
  {
    sb.Append(suit);
    sb.Append(value);
    sb.Append(" ");
  }
  sb.Append(Environment.NewLine);
}
NewDecktextBox.Text = sb.ToString()
.

문자열은 .NET에서는 불변입니다.당신은 그 길을 당신이 텍스트 상자에 추가 한 모든 카드에 대한 새로운 문자열을 만들 수 있으므로 기본적으로 52 개 "C2"그런 다음 "C2 C3"....

루프에서 문자열을 조작하기 시작하면 StringBuilder가 이동하는 방법입니다.

다른 팁은 다른 카드를 추가하고 싶다면 당신이 할 수있는 경우 위단을 사용하는 것입니다.황제 (이제 저에 의해 발명되었다), 루프 변수와 배열을 변경해야합니다.

행복한 학습.

환경 .Newline은 입력 한 환경의 줄 끝입니다. 자동으로 LF 또는 CRLF와 함께 대처합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top