Menu
CoddyTech

Metody, które zwracają wynik

Część sekcji Podstawy skryptów w Unity ścieżki Unity w Coddy. Lekcja 40 z 85.

Niektóre metody wykonują jakąś pracę. Inne coś obliczają i zwracają wynik, jak kalkulator. W przypadku takich metod typ wyniku wpisuje się tam, gdzie było void:

int Double(int n)
{
    return n * 2;
}

int przed nazwą oznacza, że ta metoda zwraca wartość typu int. return przekazuje wartość z powrotem do wywołującego i kończy metodę, więc instrukcje znajdujące się po nim w tej samej metodzie nie zostaną wykonane.

Wywołanie metody oznacza wtedy wynik w dowolnym miejscu, w którym je umieścisz:

int big = Double(21);          // big wynosi 42
Debug.Log("Twice 5 is " + Double(5));

Metoda zwracająca wartość musi dotrzeć do instrukcji return z wartością zgodną ze swoim typem; w przeciwnym razie C# nie pozwoli uruchomić skryptu.

challenge icon

Wyzwanie

Średni

Dokończ Score: moneta jest warta 1 punkt, a klejnot 5.

  1. W Score(int coins, int gems) znajdź return 0;.
  2. Zastąp to przez return coins + gems * 5;.

Naciśnij „Graj”: w konsoli pojawi się Score: 23 dla 3 monet i 4 klejnotów, a pasek urośnie. Następnie naciśnij „Sprawdź”.

Spróbuj swoich sił

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);
    }

    // Moneta jest warta 1 punkt, a klejnot 5.
    int Score(int coins, int gems)
    {
        return 0;
    }
}

Wszystkie lekcje w sekcji Podstawy skryptów w Unity

Poćwicz samodzielnie: Edytor online Unity