Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Metodeparametere | Metoder
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
C#-Grunnleggende

bookMetodeparametere

Noen ganger må vi sende inn data til metodene slik at de kan behandle disse dataene og gi oss et resultat. For eksempel kan vi lage en metode som beregner summen av tre tall og returnerer resultatet. Dette kan oppnås ved å bruke metodeparametere.

Vi kan lage en metode med parametere ved å bruke følgende syntaks:

main.cs

main.cs

copy
1234
static void methodName(dataType parameter1, dataType parameter2, ...) { // Code to be executed }

Her er bruken av parameterne:

main.cs

main.cs

copy
12345
static void sumOfThree(int a, int b, int c) { int sum = a + b + c; Console.WriteLine($"The sum is {sum}"); }

Merk

Det er også mulig å skrive uttrykk direkte i strengformatering, derfor er det gyldig å skrive Console.WriteLine($"The sum is {a + b + c}") i eksempelet over.

I koden over representerer begrepene a, b og c de overførte dataene. Når vi kaller en slik metode, sender vi med dataene. Syntaksen for å utføre/kalle en slik metode er følgende:

main.cs

main.cs

copy
1
methodName(argument1, argument2, ...);

For eksempel:

main.cs

main.cs

copy
1
sumOfThree(1, 2, 3);

Merk

Et argument er en verdi som sendes til en metode når den kalles, for eksempel 1, 2 og 3 i eksempelet ovenfor er argumenter. På den annen side er en parameter en variabel som er deklarert i metodens definisjon for å motta og arbeide med disse argumentene. I dette tilfellet er a, b og c parameterne.

Her er hele koden for eksempelet ovenfor:

main.cs

main.cs

copy
1234567891011121314151617
using System; namespace ConsoleApp { internal class Program { static void sumOfThree(int a, int b, int c) { Console.WriteLine($"The sum is {a + b + c}"); } static void Main(string[] args) { sumOfThree(1, 2, 3); } } }

Følgende illustrasjon forklarer flyten:

Ved kall av en metode må riktig antall argumenter alltid oppgis, ellers kan koden feile ved kompilering:

main.cs

main.cs

copy
12345678910111213141516171819
using System; namespace ConsoleApp { internal class Program { static void sumOfThree(int a, int b, int c) { int sum = a + b + c; Console.WriteLine($"The sum is {sum}"); } static void Main(string[] args) { //sumOfThree(1, 2); // Error sumOfThree(5, 6, 7); // Valid } } }

Merk

I koden ovenfor vil linjen sumOfThree(1, 2) gi en feil, fordi det kun er oppgitt 2 argumenter. Det kreves 3.

I tillegg må rekkefølgen på argumentene også samsvare med definisjonen av metoden:

main.cs

main.cs

copy
123456789
static void exampleMethod(int a, string b, bool c) { Console.WriteLine(a); Console.WriteLine(b); Console.WriteLine(c); } exampleMethod("Hello", 1, true); // Invalid exampleMethod(true, "Hello", 1); // Invalid exampleMethod(1, "Hello", true); // Correct
question mark

Hva er en gyldig måte å kalle følgende metode på?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 6. Kapittel 4

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

bookMetodeparametere

Sveip for å vise menyen

Noen ganger må vi sende inn data til metodene slik at de kan behandle disse dataene og gi oss et resultat. For eksempel kan vi lage en metode som beregner summen av tre tall og returnerer resultatet. Dette kan oppnås ved å bruke metodeparametere.

Vi kan lage en metode med parametere ved å bruke følgende syntaks:

main.cs

main.cs

copy
1234
static void methodName(dataType parameter1, dataType parameter2, ...) { // Code to be executed }

Her er bruken av parameterne:

main.cs

main.cs

copy
12345
static void sumOfThree(int a, int b, int c) { int sum = a + b + c; Console.WriteLine($"The sum is {sum}"); }

Merk

Det er også mulig å skrive uttrykk direkte i strengformatering, derfor er det gyldig å skrive Console.WriteLine($"The sum is {a + b + c}") i eksempelet over.

I koden over representerer begrepene a, b og c de overførte dataene. Når vi kaller en slik metode, sender vi med dataene. Syntaksen for å utføre/kalle en slik metode er følgende:

main.cs

main.cs

copy
1
methodName(argument1, argument2, ...);

For eksempel:

main.cs

main.cs

copy
1
sumOfThree(1, 2, 3);

Merk

Et argument er en verdi som sendes til en metode når den kalles, for eksempel 1, 2 og 3 i eksempelet ovenfor er argumenter. På den annen side er en parameter en variabel som er deklarert i metodens definisjon for å motta og arbeide med disse argumentene. I dette tilfellet er a, b og c parameterne.

Her er hele koden for eksempelet ovenfor:

main.cs

main.cs

copy
1234567891011121314151617
using System; namespace ConsoleApp { internal class Program { static void sumOfThree(int a, int b, int c) { Console.WriteLine($"The sum is {a + b + c}"); } static void Main(string[] args) { sumOfThree(1, 2, 3); } } }

Følgende illustrasjon forklarer flyten:

Ved kall av en metode må riktig antall argumenter alltid oppgis, ellers kan koden feile ved kompilering:

main.cs

main.cs

copy
12345678910111213141516171819
using System; namespace ConsoleApp { internal class Program { static void sumOfThree(int a, int b, int c) { int sum = a + b + c; Console.WriteLine($"The sum is {sum}"); } static void Main(string[] args) { //sumOfThree(1, 2); // Error sumOfThree(5, 6, 7); // Valid } } }

Merk

I koden ovenfor vil linjen sumOfThree(1, 2) gi en feil, fordi det kun er oppgitt 2 argumenter. Det kreves 3.

I tillegg må rekkefølgen på argumentene også samsvare med definisjonen av metoden:

main.cs

main.cs

copy
123456789
static void exampleMethod(int a, string b, bool c) { Console.WriteLine(a); Console.WriteLine(b); Console.WriteLine(c); } exampleMethod("Hello", 1, true); // Invalid exampleMethod(true, "Hello", 1); // Invalid exampleMethod(1, "Hello", true); // Correct
question mark

Hva er en gyldig måte å kalle følgende metode på?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 6. Kapittel 4
some-alt