2016-10-31 5 views
0

vb.net에서 windows 응용 프로그램을 수행하고 있습니다. 런타임에 변수에 값을 지정하려고합니다.WinForms의 VB.NET을 사용하여 배열 내부의 변수에 값을 할당하십시오.

예를 들면.

Dim Mystring(2) As String 
Mystring(0) = "1" 
Mystring(1) = "2" 
Dim var1, var2 As String 
Mystring = {a = Mystring(0), b = Mystring(1)} 
MsgBox(var1) 
MsgBox(var2) 

나는 변수 VAR2에 변수 var1에mystring에 (1) 가치의 mystring에 (0) 값을 저장하기를 원하지만 위의 코드를 메시지 상자가 null 값을 반환합니다. 감사!

+0

이는 할당이 아니라 동등성에 대한 = 연산자 테스트입니다. * Booleans *를 사용하여 배열 요소를 초기화하고 있습니다. Option Strict On을 사용하면 컴파일러가 올바른 코드를 작성할 수 있습니다. –

+0

@Hans Passant에게 감사드립니다. 그렇습니다. 그 결과로 반환 값은 증가합니다. 배열 요소 내부에 직접 할당 할 수있는 방법이 있습니까? 미리 감사드립니다. – PRABA

답변

0

먼저 문자열 개체 목록을 만듭니다.

Dim Mystring As New List(Of String) 

두 번째로 두 개의 문자열 값을 목록에 추가하십시오.

Mystring.Add("1") 
Mystring.Add("2") 

셋째, 두 개의 새로운 유형의 변수 string을 선언하십시오.

Dim var1, var2 As String 

넷째, 문자열 개체 목록의 첫 번째 및 두 번째 값을 string 유형의 새로 만든 변수에 할당합니다.

var1 = Mystring(0) 
var2 = Mystring(1) 

마지막으로 각 값을 메시지 상자에 표시하십시오.

MsgBox(var1) 
MsgBox(var2) 
+0

@ @vaylo Petrov에게 감사드립니다. 그러나이 값을 직접'Mystring = {a = Mystring (0), b = Mystring (1)} '과 같이 지정할 수 있습니다. 왜냐하면 내 Windows 응용 프로그램에서 문자열 크기가 큽니다. 위에서 언급 한 것처럼 코드의 줄을 많이 쓰고 싶다. 코드 줄을 줄이고 싶다. – PRABA

+0

다음과 같이 문자열리스트에 새로운 값을 추가 할 수 있습니다 :'새로운리스트 (문자열) (새 문자열() {1, 2, 3, 4, 5}}) ' –

+0

또한이 값을 메시지 상자에 표시하기 위해 새 변수에 각각 지정할 필요가 없습니다. 다음과 같이 표시 할 수 있습니다 :'MsgBox (Mystring (0))' –

0

배열을 사용하려면 목록을 사용하는 것이 좋지만 코드는 다음과 같아야합니다.

Dim Mystring(1) As String 
    Mystring(0) = "1" 
    Mystring(1) = "2" 
    Dim var1, var2 As String 
    var1 = Mystring(0) 
    var2 = Mystring(1) 

배열의 선언이 변경되었습니다.() 안의 숫자는 필요한 항목 수보다 작은 가장 높은 색인입니다. 기억 우리는 색인을 위해 0에서 시작하고있다.

관련 문제