Métodos de Struct
Una estructura también puede tener métodos además de campos de datos. En una estructura, se crea un método de manera similar a como se crea un método en general:
index.cs
123456789struct structureName { // some fields here (optional) public returnType methodName(parameter1, parameter2, ...) { // code } }
Por ejemplo:
index.cs
12345678910struct Player { public string name; public int score; public void displayScore() { Console.WriteLine($"{name} has {score} score"); } }
En la estructura Player
existe un método llamado displayScore
que muestra un mensaje de salida formateado que contiene el name
y el score
. Es importante destacar que los valores de name
y score
serán diferentes para cada objeto (instancia), lo que significa que el método displayScore
mostrará una salida diferente para cada objeto.
Se puede acceder y ejecutar el método utilizando la sintaxis variableName.methodName()
. A continuación, se muestra cómo se utiliza la estructura Player
:
index.cs
123456789101112131415161718192021222324252627282930using 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(); } }
En el ejemplo, se crearon dos objetos utilizando la clase Player
y se les asignaron algunos datos. El método displayScore
se llamó usando cada objeto y la salida resultó ser diferente para cada uno de ellos.
También se pueden tener métodos con algunos parámetros. Agreguemos un nuevo método llamado addScore
que aumenta la puntuación en una cantidad especificada y probemos su uso:
index.cs
12345678910111213141516171819202122232425262728293031using 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(); } }
Se puede observar en la salida que el método actualiza la puntuación en 70
puntos.
1. ¿Cuál es una palabra clave válida para declarar un método?
2. ¿Cuál será la salida del siguiente código?
¡Gracias por tus comentarios!
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
Awesome!
Completion rate improved to 2.04
Métodos de Struct
Desliza para mostrar el menú
Una estructura también puede tener métodos además de campos de datos. En una estructura, se crea un método de manera similar a como se crea un método en general:
index.cs
123456789struct structureName { // some fields here (optional) public returnType methodName(parameter1, parameter2, ...) { // code } }
Por ejemplo:
index.cs
12345678910struct Player { public string name; public int score; public void displayScore() { Console.WriteLine($"{name} has {score} score"); } }
En la estructura Player
existe un método llamado displayScore
que muestra un mensaje de salida formateado que contiene el name
y el score
. Es importante destacar que los valores de name
y score
serán diferentes para cada objeto (instancia), lo que significa que el método displayScore
mostrará una salida diferente para cada objeto.
Se puede acceder y ejecutar el método utilizando la sintaxis variableName.methodName()
. A continuación, se muestra cómo se utiliza la estructura Player
:
index.cs
123456789101112131415161718192021222324252627282930using 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(); } }
En el ejemplo, se crearon dos objetos utilizando la clase Player
y se les asignaron algunos datos. El método displayScore
se llamó usando cada objeto y la salida resultó ser diferente para cada uno de ellos.
También se pueden tener métodos con algunos parámetros. Agreguemos un nuevo método llamado addScore
que aumenta la puntuación en una cantidad especificada y probemos su uso:
index.cs
12345678910111213141516171819202122232425262728293031using 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(); } }
Se puede observar en la salida que el método actualiza la puntuación en 70
puntos.
1. ¿Cuál es una palabra clave válida para declarar un método?
2. ¿Cuál será la salida del siguiente código?
¡Gracias por tus comentarios!