값을 반환하는 메서드
Coddy Unity 여정의 Unity 스크립팅 기초 섹션에 포함된 레슨. 85개 중 40번째.
어떤 메서드는 작업을 수행합니다. 다른 메서드는 계산기로 계산하듯이 무언가를 계산해 답을 돌려줍니다. 이런 메서드에서는 void가 있던 자리에 답의 형식을 씁니다.
int Double(int n)
{
return n * 2;
}이름 앞의 int는 이 메서드가 int를 돌려준다는 뜻입니다. return은 값을 호출한 곳에 돌려주고 메서드를 끝내므로, 같은 메서드에서 그 뒤에 나오는 줄은 실행되지 않습니다.
그러면 메서드 호출은 어디에 넣든 답을 나타냅니다.
int big = Double(21); // big은 42입니다
Debug.Log("Twice 5 is " + Double(5));값을 돌려주는 메서드는 해당 형식의 값을 지정한 return에 도달해야 합니다. 그렇지 않으면 C#은 스크립트 실행을 거부합니다.
챌린지
중급Score를 완성하세요. 코인은 1점, 보석은 5점입니다.
Score(int coins, int gems)에서return 0;을 찾으세요.- 이를
return coins + gems * 5;로 바꾸세요.
‘플레이’를 누르세요. 콘솔에 코인 3개와 보석 4개에 대해 Score: 23이 표시되고 막대가 길어집니다. 그런 다음 ‘확인’을 누르세요.
직접 해보기
using UnityEngine;
public class ScoreBoard : MonoBehaviour
{
void Start()
{
int score = Score(3, 4);
Debug.Log("Score: " + score);
transform.localScale = new Vector3(1, score / 5f, 1);
}
// 코인 하나는 1점이고 보석 하나는 5점입니다.
int Score(int coins, int gems)
{
return 0;
}
}
Unity 스크립팅 기초의 모든 레슨
직접 연습해 보세요: Unity 플레이그라운드