Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Metodreturvärden | Metoder
C#-Grunder

bookMetodreturvärden

I de två senaste kapitlen lärde vi oss hur man skickar data in i funktioner, men nu ska vi lära oss hur man hämtar data från metoden tillbaka till platsen där den anropades.

Processen att hämta data från metoder kallas även att returnera data och den data eller det värde som returneras kallas för returvärde.

Syntaxen för att skapa en metod med ett returvärde är följande:

main.cs

main.cs

copy
1234
// Note: Parameters are optional static returnDataType methodName(dataType parameter1, ...) { return valueToReturn; }

valueToReturn representerar en variabel, ett värde eller ett uttryck som måste vara av samma typ som returnDataType.

Följande är ett korrekt exempel:

main.cs

main.cs

copy
1234
static int sumOfThree(int a, int b, int c) { int sum = a + b + c; return sum; }

Om fel typ av data returneras visas ett felmeddelande:

main.cs

main.cs

copy
1234
static int sumOfThree(int a, int b, int c) { string sum = "10"; return sum; // Error (the string has a number in it, but it is still a string/text) }

Värdet som returneras från metoden sumOfThree kan lagras i en variabel:

main.cs

main.cs

copy
123456789101112131415161718
using System; namespace ConsoleApp { internal class Program { static int sumOfThree(int a, int b, int c) { int sum = a + b + c; return sum; } static void Main(string[] args) { int result = sumOfThree(5, 10, 15); Console.WriteLine(result); // Output: 30 } } }

Vi kan också direkt skriva ut returvärdet med hjälp av Console.WriteLine:

main.cs

main.cs

copy
1234567891011121314151617
using System; namespace ConsoleApp { internal class Program { static int sumOfThree(int a, int b, int c) { int sum = a + b + c; return sum; } static void Main(string[] args) { Console.WriteLine(sumOfThree(5, 10, 15)); } } }

Vi kan också direkt skriva uttryck som returvärden. I sådana fall utvärderas uttrycket först och sedan returneras det resulterande värdet.

Produkten av tre heltal:

main.cs

main.cs

copy
12345678910111213141516
using System; namespace ConsoleApp { internal class Program { static int productOfThree(int a, int b, int c) { return a * b * c; } static void Main(string[] args) { Console.WriteLine(productOfThree(5, 10, 15)); } } }

Medelvärde:

main.cs

main.cs

copy
12345678910111213141516
using System; namespace ConsoleApp { internal class Program { static float average(int a, int b) { return (a + b) / 2.0f; } static void Main(string[] args) { Console.WriteLine(average(5, 10)); } } }
question mark

Vilken datatyp ska metoden returnera?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 6. Kapitel 6

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

Awesome!

Completion rate improved to 1.59

bookMetodreturvärden

Svep för att visa menyn

I de två senaste kapitlen lärde vi oss hur man skickar data in i funktioner, men nu ska vi lära oss hur man hämtar data från metoden tillbaka till platsen där den anropades.

Processen att hämta data från metoder kallas även att returnera data och den data eller det värde som returneras kallas för returvärde.

Syntaxen för att skapa en metod med ett returvärde är följande:

main.cs

main.cs

copy
1234
// Note: Parameters are optional static returnDataType methodName(dataType parameter1, ...) { return valueToReturn; }

valueToReturn representerar en variabel, ett värde eller ett uttryck som måste vara av samma typ som returnDataType.

Följande är ett korrekt exempel:

main.cs

main.cs

copy
1234
static int sumOfThree(int a, int b, int c) { int sum = a + b + c; return sum; }

Om fel typ av data returneras visas ett felmeddelande:

main.cs

main.cs

copy
1234
static int sumOfThree(int a, int b, int c) { string sum = "10"; return sum; // Error (the string has a number in it, but it is still a string/text) }

Värdet som returneras från metoden sumOfThree kan lagras i en variabel:

main.cs

main.cs

copy
123456789101112131415161718
using System; namespace ConsoleApp { internal class Program { static int sumOfThree(int a, int b, int c) { int sum = a + b + c; return sum; } static void Main(string[] args) { int result = sumOfThree(5, 10, 15); Console.WriteLine(result); // Output: 30 } } }

Vi kan också direkt skriva ut returvärdet med hjälp av Console.WriteLine:

main.cs

main.cs

copy
1234567891011121314151617
using System; namespace ConsoleApp { internal class Program { static int sumOfThree(int a, int b, int c) { int sum = a + b + c; return sum; } static void Main(string[] args) { Console.WriteLine(sumOfThree(5, 10, 15)); } } }

Vi kan också direkt skriva uttryck som returvärden. I sådana fall utvärderas uttrycket först och sedan returneras det resulterande värdet.

Produkten av tre heltal:

main.cs

main.cs

copy
12345678910111213141516
using System; namespace ConsoleApp { internal class Program { static int productOfThree(int a, int b, int c) { return a * b * c; } static void Main(string[] args) { Console.WriteLine(productOfThree(5, 10, 15)); } } }

Medelvärde:

main.cs

main.cs

copy
12345678910111213141516
using System; namespace ConsoleApp { internal class Program { static float average(int a, int b) { return (a + b) / 2.0f; } static void Main(string[] args) { Console.WriteLine(average(5, 10)); } } }
question mark

Vilken datatyp ska metoden returnera?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 6. Kapitel 6
some-alt