2017-10-24 6 views
0

공공 Form1 클래스에 대한 기본 2010 시각 ..To 한 Statment

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
    Dim password As String, ch As Char 
    Dim i As Integer 
    Dim valid As Boolean = False 
    While valid = False 
     password = InputBox("Please enter your password") 
     For i = 0 To password.Length - 1 
      ch = password.Chars(i) 
      If Not Char.IsLetterOrDigit(ch) Then 
       valid = True 
       Exit For 
      End If 
     Next 
     If valid Then 
      MsgBox("Your new password will be activated immediately") 
     Else 
      MsgBox("your password must contain at least one special symbol") 
     End If 
    End While 
End Sub 

모두 안녕하세요, 암호 내 기호가 있는지 확인합니다이 프로그램은 내 질문합니다 (한 Statment (For i = 0 To password.Length - 1)의 약이다 - 1) 왜 우리는 -1을 쓰고, 나는 이걸 제외하고 모든 것을 이해했습니다. -1, 감사합니다.

+0

문자열의 길이가 말하자면 3 문자로 길면 문자 (Chars (0), Chars (1) 및 Chars (2))는 사용할 수 있지만 Chars (3)은 사용할 수 없습니다. For-To 문은 여러 해 전에 설계되었지만 1에서 시작하는 것이 여전히 일반적 이었지만 .NET에서 첫 번째 유효한 인덱스는 항상 0입니다. –

+0

감사합니다. 무슨 뜻인지는 알지만, (-1)은 문장의 끝에서 무엇을합니까 (-1)? 왜 우리는 -1을 뺄까요? – cain

답변

0

맞아, 맞아. 왜냐하면 VB는 0에서부터 시작하기 때문에 1234를 쓰면 VBB 12345를 의미하고 마지막으로 -1을 제거한 다음 결과로 1234를 가져와야합니다. 한스 패전트 (Hans Passant)에게 감사합니다