2013-08-01 2 views
-4
이 코드를 가지고

맞춰, "?" 문자열이 null 또는 비어 있지 않은 경우 운영자는 확인

string a, b; 
b = null; 

은 어떻게 사용할 수있는 "?" 연산자가 b가 null 또는 비어 있지 않은지 확인합니다. 이 "A"

내가 string.IsNullOrEmpty(), 이유 ---> I 돈을 사용하지 않으에서 null 또는 빈 아니라면

나는 "B"의 값을 얻으려면 "if와 else"를 사용하고 싶지 않습니다 :)

다음 질문을 생각해보십시오. 왜 if와 else를 사용하지 않을까요?

+0

'VAR을 res = b == null? "null": "not null"; – wudzik

+6

비밀이 아닌 경우 IsNullOrEmpty를 사용하지 않으려는 이유는 무엇입니까? 뭐가 잘못 됐어? –

+1

표준 문자열에 문제가 있습니다 .IsNullOrEmpty()? –

답변

9

이 작동 할

if이와 else에 의지 할 필요가 없습니다
a = string.IsNullOrEmpty(b) ? a : b; 

...

+0

감사합니다. 나는이 방법을 알지 못했고, 몇 분 안에 대답을 받아 들였습니다. – Mathematics

4

당신은이 작업을 수행 할 수 있습니다 :

a = b == null || b == string.Empty ? "Some Value" : b; 

물론, 당신은 항상 다만이 작업을 수행 할 수 있습니다

a = string.IsNullOrEmpty(b) ? "Some Value" : b; 

을 의미하지 않는다 string.IsNullOrEmpty를 사용하여 당신이 if/else - 블록을 사용하는이

-1

찾고 계신가요? a = (b == null || b.Length < 1 ? a : b);?

a = (b ?? "") == "" ? a : b; 

을 왜 땅에 그냥 사용하지 :

+1

문자열이 비어 있는지 확인해야한다는 것을 알지 못했기 때문입니다. – Chris

+0

@Chris는 그것을 보지 못했습니다 : p – dotixx

관련 문제