Menu
CoddyTech

Methoden mit Rückgabewert

Teil des Abschnitts Unity-Scripting: Grundlagen der Unity-Journey von Coddy. Lektion 40 von 85.

Manche Methoden erledigen eine Aufgabe. Andere berechnen etwas und geben die Antwort zurück, wie ein Taschenrechner. Bei ihnen steht der Typ der Antwort dort, wo void stand:

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

int vor dem Namen sagt, dass diese Methode einen int zurückgibt. return gibt den Wert an den Aufrufer zurück und beendet die Methode. Daher werden die Zeilen danach innerhalb derselben Methode nicht ausgeführt.

Der Methodenaufruf steht dann für die Antwort, egal, wo du ihn einsetzt:

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

Eine Methode, die einen Wert zurückgibt, muss ein return mit einem Wert ihres Typs erreichen; andernfalls weigert sich C#, das Skript auszuführen.

challenge icon

Aufgabe

Mittel

Vervollständige Score: Eine Münze ist 1 Punkt wert und ein Edelstein 5.

  1. Suche in Score(int coins, int gems) nach return 0;.
  2. Ersetze es durch return coins + gems * 5;.

Drücke auf „Spielen“: In der Console wird für 3 Münzen und 4 Edelsteine Score: 23 angezeigt, und der Balken wächst. Drücke dann auf „Prüfen“.

Probier es selbst

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

    // Eine Münze ist 1 Punkt wert und ein Edelstein 5 Punkte.
    int Score(int coins, int gems)
    {
        return 0;
    }
}

Alle Lektionen in Unity-Scripting: Grundlagen

Übe selbstständig: Unity-Playground