-2
다음 코드는 그 자체로 말합니다.if-else 문을 더 짧은 방법으로 대체하려면 어떻게해야합니까?
if (card==1) {
cardImageString = @"myGrabbedImage1.png";
} else if (card==2) {
cardImageString = @"myGrabbedImage2.png";
} else if (card==3) {
cardImageString = @"myGrabbedImage3.png";
} else if (card==4) {
cardImageString = @"myGrabbedImage4.png";
} else if (card==5) {
cardImageString = @"myGrabbedImage5.png";
} else if (card==6) {
cardImageString = @"myGrabbedImage6.png";
} else if (card==7) {
cardImageString = @"myGrabbedImage7.png";
} else if (card==8) {
cardImageString = @"myGrabbedImage8.png";
}
실제 if-else는 이보다 10 배 더 큽니다.
카드 = int.
CardImageString = NSString.
'카드'는이 문장에서만 사용되며 답변에서 삭제할 수 있습니다.
어떻게이 모든 기능을 단순화 할 수 있습니까 ??? 감사!!
@vince : 그것은 1 ~ 8 단지 넣다 경우, 당신은 카드를 확인하시기 바랍니다. – rckoenes
NSNumber 정수의 로케일은 다른 출력을 가질 수 있습니까? 나는 그것을'NSNumber'로 복싱 한 것으로 생각하고 인쇄하는 것이 가장 유연합니다. 왜냐하면'int','long','NSInteger' 또는 다른 것을 사용하기 때문에 컴파일러 경고를 피하기 위해 캐스팅하지 않아도 작동하기 때문입니다. –
OK, 추가 테스트를 마친 후, 나는 틀렸어. 'stringWithFormat'는 현재 로켈이 아닌 시스템 로케일을 사용합니다. 그래서 사용자의 로켈에 관계없이 응답의 코드가 작동합니다. 내 투표를 취소 할 수 있도록 답변을 사소한 수정해야합니다. 혼란에 대해 죄송합니다. – rmaddy