Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Struct-Methoden | Strukturen & Aufzählungstypen
C# Jenseits der Grundlagen

bookStruct-Methoden

Eine Struktur kann neben Datenfeldern auch Methoden enthalten. In einer Struktur wird eine Methode ähnlich erstellt wie eine Methode im Allgemeinen:

index.cs

index.cs

copy
123456789
struct structureName { // some fields here (optional) public returnType methodName(parameter1, parameter2, ...) { // code } }

Beispiel:

index.cs

index.cs

copy
12345678910
struct Player { public string name; public int score; public void displayScore() { Console.WriteLine($"{name} has {score} score"); } }

In der Struktur Player gibt es eine Methode namens displayScore, die eine formatierte Ausgabemeldung mit dem name und score anzeigt. Es ist wichtig zu beachten, dass die Werte von name und score für jedes Objekt (Instanz) unterschiedlich sind, was bedeutet, dass die Methode displayScore für jedes Objekt eine andere Ausgabe liefert.

Auf die Methode kann mit der Syntax variableName.methodName() zugegriffen und sie ausgeführt werden. Im Folgenden wird gezeigt, wie die Struktur Player verwendet wird:

index.cs

index.cs

copy
123456789101112131415161718192021222324252627282930
using System; struct Player { public string name; public int score; public void displayScore() { Console.WriteLine($"{name} has {score} score"); } } class ConsoleApp { static void Main(string[] args) { Player player1 = new Player(); Player player2 = new Player(); player1.name = "SuperKillerPro"; player1.score = 100; player2.name = "Cyrex"; player2.score = 77; player1.displayScore(); player2.displayScore(); } }

Im Beispiel wurden zwei Objekte mit der Klasse Player erstellt und mit Daten versehen. Die Methode displayScore wurde für jedes Objekt aufgerufen und die Ausgabe war für beide unterschiedlich.

Es können auch Methoden mit Parametern definiert werden. Fügen wir eine neue Methode namens addScore hinzu, die den Punktestand um einen angegebenen Wert erhöht, und wenden sie an:

index.cs

index.cs

copy
12345678910111213141516171819202122232425262728293031
using System; struct Player { public string name; public int score; public void displayScore() { Console.WriteLine($"{name} has {score} score"); } public void addScore(int add) { score += add; } } class ConsoleApp { static void Main(string[] args) { Player player1 = new Player(); player1.name = "SuperKillerPro"; player1.score = 100; player1.displayScore(); player1.addScore(70); player1.displayScore(); } }

An der Ausgabe ist zu erkennen, dass die Methode den Punktestand um 70 Punkte erhöht.

1. Welches ist ein gültiges Schlüsselwort zur Deklaration einer Methode?

2. Was ist die Ausgabe des folgenden Codes?

question mark

Welches ist ein gültiges Schlüsselwort zur Deklaration einer Methode?

Select the correct answer

question mark

Was ist die Ausgabe des folgenden Codes?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 5

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Awesome!

Completion rate improved to 2.04

bookStruct-Methoden

Swipe um das Menü anzuzeigen

Eine Struktur kann neben Datenfeldern auch Methoden enthalten. In einer Struktur wird eine Methode ähnlich erstellt wie eine Methode im Allgemeinen:

index.cs

index.cs

copy
123456789
struct structureName { // some fields here (optional) public returnType methodName(parameter1, parameter2, ...) { // code } }

Beispiel:

index.cs

index.cs

copy
12345678910
struct Player { public string name; public int score; public void displayScore() { Console.WriteLine($"{name} has {score} score"); } }

In der Struktur Player gibt es eine Methode namens displayScore, die eine formatierte Ausgabemeldung mit dem name und score anzeigt. Es ist wichtig zu beachten, dass die Werte von name und score für jedes Objekt (Instanz) unterschiedlich sind, was bedeutet, dass die Methode displayScore für jedes Objekt eine andere Ausgabe liefert.

Auf die Methode kann mit der Syntax variableName.methodName() zugegriffen und sie ausgeführt werden. Im Folgenden wird gezeigt, wie die Struktur Player verwendet wird:

index.cs

index.cs

copy
123456789101112131415161718192021222324252627282930
using System; struct Player { public string name; public int score; public void displayScore() { Console.WriteLine($"{name} has {score} score"); } } class ConsoleApp { static void Main(string[] args) { Player player1 = new Player(); Player player2 = new Player(); player1.name = "SuperKillerPro"; player1.score = 100; player2.name = "Cyrex"; player2.score = 77; player1.displayScore(); player2.displayScore(); } }

Im Beispiel wurden zwei Objekte mit der Klasse Player erstellt und mit Daten versehen. Die Methode displayScore wurde für jedes Objekt aufgerufen und die Ausgabe war für beide unterschiedlich.

Es können auch Methoden mit Parametern definiert werden. Fügen wir eine neue Methode namens addScore hinzu, die den Punktestand um einen angegebenen Wert erhöht, und wenden sie an:

index.cs

index.cs

copy
12345678910111213141516171819202122232425262728293031
using System; struct Player { public string name; public int score; public void displayScore() { Console.WriteLine($"{name} has {score} score"); } public void addScore(int add) { score += add; } } class ConsoleApp { static void Main(string[] args) { Player player1 = new Player(); player1.name = "SuperKillerPro"; player1.score = 100; player1.displayScore(); player1.addScore(70); player1.displayScore(); } }

An der Ausgabe ist zu erkennen, dass die Methode den Punktestand um 70 Punkte erhöht.

1. Welches ist ein gültiges Schlüsselwort zur Deklaration einer Methode?

2. Was ist die Ausgabe des folgenden Codes?

question mark

Welches ist ein gültiges Schlüsselwort zur Deklaration einer Methode?

Select the correct answer

question mark

Was ist die Ausgabe des folgenden Codes?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 5
some-alt