if 문에서 true 또는 false 값을 반환하는 메서드를 호출하는 것이 좋은 방법입니까?
이 같은:
private void VerifyAccount()
{
if (!ValidateCredentials(txtUser.Text, txtPassword.Text))
{
MessageBox.Show("Invalid user name or password");
}
}
private bool ValidateCredentials(string userName, string password)
{
string existingPassword = GetUserPassword(userName);
if (existingPassword == null)
return false;
var hasher = new Hasher { SaltSize = 16 };
bool passwordsMatch = hasher.CompareStringToHash(password, existingPassword);
return passwordsMatch;
}
또는 변수에 저장하고 다음과 같은 다른 값을 사용하여 비교하는 것이 좋습니다
bool validate = ValidateCredentials(txtUser.Text, txtPassword.Text);
if(validate == false){
//Do something
}
.NET을 언급 할뿐만 아니라 모든 프로그래밍 언어의 질문을 언급하고 있으므로 .NET을 예로 사용했습니다.
IsValidCredentials문법적으로 어색하지만 부울 리턴 값을 표시하는 일반적인 형식입니다.
!"NOT"연산자이며 부울 표현식을 무효화합니다. 그래서 if (!validate)반대입니다 if (validate). if 문이 validatetrue가 아닌 경우 입력됩니다 .
if (!validate)대신을 쓰십시오if (validate == false).