2012-05-02 2 views
4

이 있습니까 단락 "만약/다음"루아에서 사용할 수있는 구문의 라인을 따라 특히 ... 다른 언어처럼, (나는 특히 코로나 SDK를 사용하고 있습니다) :이 예Lua에 "if then"구문을 사용할 수 있습니까?

res = (a == b) ? "It worked" : "It did NOT work" 

답변

7

일부 사용 사례입니다. http://lua-users.org/wiki/TernaryOperator

A는 자주 사용되는 참조 높은 솔루션을 밀접하게 삼항 운영자에 가까운 방식으로하고 및 바이너리 연산자를 결합하는 것입니다 추천이 유일한 작품은, 그러나

x = a and b or c 
x = a and b or c and d or e 

을 if 문의 본문이 표현식 인 경우 예를 들어, 다음은 잘못되었습니다

x == 3 and break else continue 
+3

이 있지만 정답 , SO의 관습은 미래의 링크 썩음으로부터 보호하기 위해 링크의 내용을 요약하는 것입니다. – RBerteig

8

일반적인 관용구 부울 표현식 단락 루아에 있기 때문에, 및/또는 건설을 사용하는 것입니다.

res = a == b and "It worked" or "It did NOT work" 

개인적으로 비록 내가 선호하는 경우/다음/다른 거의 모든 경우입니다.

+3

그러나이 제한에주의하십시오.'a == b 및 nil 또는 42'는 'a == b'가 true 일 때에도 항상 '42'로 평가됩니다. "iftrue"팔의 결과가'nil'도 아니고'false'도 아닌 경우에만이 기술을 사용할 수 있습니다. – dubiousjim

+0

좋은 지적, @dubiousjim. – shabunc

-1

루아는 shortway가있는 경우에만이

A = 해달라고 또는 "안녕하세요" 단지 같은 같은 : 하지 않을 경우의 (a) 다음 = "안녕하세요"말

+0

이 답변입니까? –

+0

wowww ... 좋은 답변 .... –

관련 문제