C# Metoder (Hur svarar jag på detta?!)

Permalänk
Medlem

C# Metoder (Hur svarar jag på detta?!)

Hej! Jag pluggar på distans och har för tillfället hjärnsläpp.
Har googlat, läst i boken, kollat på MSDN, kollat youtube och microsofts videos- men har ändå problem att svara på denna frågan i mitt arbete:

"Ge 2-4 exempel på metoder som vi har arbetat med i C# och vad de gör. Vi syftar inte till metoder som vi har skrivit själva, utan metoder som redan finns i C#."

Vet inte om själva frågan är oklar eller om jag helt enkelt inte fattat, men vad exakt är själva metoden?

Är det menat att jag ska bröta in med "static void Main(string[] args)" och beskriva hela det brötet, eller ska jag beskriva commands som "Console.WriteLine" då jag fått lära mig att "Console" är en klass och "WriteLine" är metod? Känns sjukt oklart.

Jag skulle uppskatta att verkligen få ett idiotsäkert, simpelt svar då jag tydligen är för korkad för annat haha.

Permalänk
Inaktiv

Låter som du ska ge exempel på metoder i någon klass som finns i .NET

Frågan är egentligen felformulerad men precis som du säger, ge exempel på WriteLine och några fler.

Finns säkert en lärare även på er kurs annars.

Permalänk
Medlem

@anon304340: Tack för svaret haha! Ville inte fråga läraren då jag redan ställt så många frågor ang deras uppgifter att jag låter helt korkad, men jag kan väl inte vara den enda som tycker att denna uppgiften är väldigt grumlig?

Permalänk
Medlem

@ermii: "Ville inte fråga läraren då jag redan ställt så många frågor" det är la det lärare är till för? Så länge man inte frågar på samma sak om och om igen, så ser nog snare läraren att du är ivrig att lära dig och faktiskt gör framsteg
Om man inget frågar, får man inget veta ( och ja, ville själv inte fråga läraren när jag pluggade då man inte ville uppfattas som "okunnig" eller "trög" men efter att läraren själv sa det jag precis beskrev ovan, så frågade jag på som fasen efter det )

Visa signatur

Glöm inte att gilla bra inlägg!

AMD Ryzen 7 2700X | ASUS ROG STRIX GeForce RTX 2060 6GB OC Gaming |
Fractal Design Meshify S2 (Blackout) | ASUS ROG STRIX X470-F Gaming |
G.Skill Trident Z RGB 3200mhz 16GB | Samsung 970 EVO Series 500 GB M2 | Seasonic Focus Plus 750W

Permalänk
Medlem

Svårt att veta vilka metoder ni har jobbat med, men metoderna i Math är ganska enkla att förstå sig på (typ Min(x, y) etc.): https://docs.microsoft.com/en-us/dotnet/api/system.math?view=...

Permalänk
Medlem

@Farthinder: Haha, det du säger är ju väldigt sant... Har alltid vart rädd att fråga efter hjälp, och det skapar ju egentligen mest bara problem. Tack för tipset eller vad man ska säga! Det behövs höras ibland!

Permalänk
Medlem

@WreXlaM: Math har vi inte jobbat med än, utan vi är mest i grund grejerna eller vad man ska säga.

Kommer dock bara på Console just nu, så vilka andra metoder skulle man kunna ta upp? Convert.ToInt32 borde fungera, men skulle det gå med TryParse? Fungerar loopar eller switch som metod-exempel?

[EDIT]
Jag löste det! Använder mig av random, console och convert! Tack för math tipset dock!

Permalänk
Medlem
Skrivet av ermii:

@WreXlaM: Math har vi inte jobbat med än, utan vi är mest i grund grejerna eller vad man ska säga.

Kommer dock bara på Console just nu, så vilka andra metoder skulle man kunna ta upp? Convert.ToInt32 borde fungera, men skulle det gå med TryParse? Fungerar loopar eller switch som metod-exempel?

[EDIT]
Jag löste det! Använder mig av random, console och convert! Tack för math tipset dock!

Svarar även fast du löst det. Loopar eller switch är inte metod-exempel. TryParse fungerar emellertid utmärkt, den likt de andra du nämnde är metoder. TryParse är lite annorlunda sett till att den returnerar en Boolean som visar om det gick bra eller inte, och använder en "out-parameter" för att spara värdet av parsningen som du anger.

Permalänk
Medlem

Jag vill bara lägga till att det är skillnad på metoder och funktioner. En funktion är fristående såsom t.ex. Math.Min eller Convert.ToInt32. Metoder är bundna till en instans, som TryGet på en Dictionary eller Add på en lista.

Permalänk
Medlem
Skrivet av IggyMo:

Jag vill bara lägga till att det är skillnad på metoder och funktioner. En funktion är fristående såsom t.ex. Math.Min eller Convert.ToInt32. Metoder är bundna till en instans, som TryGet på en Dictionary eller Add på en lista.

Min är en static metod, Math är en static class.
Det du hänvisar som funktioner är extension methods. Functions skulle jag säga hör till bl.a. JavaScript även om LINQ bygger på functional programming.

Skickades från m.sweclockers.com

Permalänk
Medlem
Skrivet av ermii:

@WreXlaM: Math har vi inte jobbat med än, utan vi är mest i grund grejerna eller vad man ska säga.

Kommer dock bara på Console just nu, så vilka andra metoder skulle man kunna ta upp? Convert.ToInt32 borde fungera, men skulle det gå med TryParse? Fungerar loopar eller switch som metod-exempel?

[EDIT]
Jag löste det! Använder mig av random, console och convert! Tack för math tipset dock!

Om ni ska utgå från metoder så är Console en class inte en metod. Metoder är i så fall t.ex. ReadLine, WriteLine m.m. dvs det som kan anropas av classen Console då du skriver en punkt.

Skickades från m.sweclockers.com

Permalänk
Medlem
Skrivet av zaibuf:

Min är en static metod, Math är en static class.
Det du hänvisar som funktioner är extension methods. Functions skulle jag säga hör till bl.a. JavaScript även om LINQ bygger på functional programming.

Skickades från m.sweclockers.com

Visst. C# har inte funktioner per name, men en static method är konceptuellt en funktion i ett namespace som utgörs av en klass. När man lär sig att programmera och ska söka information, samt prata med andra, så tror jag att det är bra att ha koll på terminologin.

Permalänk
Medlem
Skrivet av IggyMo:

Visst. C# har inte funktioner per name, men en static method är konceptuellt en funktion i ett namespace som utgörs av en klass. När man lär sig att programmera och ska söka information, samt prata med andra, så tror jag att det är bra att ha koll på terminologin.

I C# heter allt methods. Därför bör han inte förvirras med funktioner. Detta är då allt i C# är objekt-orienterat och klasser har metoder, du kan inte skapa en metod utan en class. Allt som tillhör en klass är metoder, i JS kan du göra functions för du behöver inte skapa dem i en class, däremot om du gör en function i en class så heter de methods. Tror terminologin du syftar på är i C++.

Skickades från m.sweclockers.com

Permalänk
Medlem
Skrivet av zaibuf:

I C# heter allt methods. Därför bör han inte förvirras med funktioner. Detta är då allt i C# är objekt-orienterat och klasser har metoder, du kan inte skapa en metod utan en class. Allt som tillhör en klass är metoder, i JS kan du göra functions för du behöver inte skapa dem i en class, däremot om du gör en function i en class så heter de methods. Tror terminologin du syftar på är i C++.

Skickades från m.sweclockers.com

Jag tror det är nyttigt att veta vad ordet "funktion" kan/brukar syfta på, och hur det relaterar till vad man kallar "metoder" i C#. Om man läser om språkagnostiska koncept, till exempel algoritmer, är det ju bra om man förstår att när de säger "funktion" så kan du tänka "statisk metod", om de säger "modul" kan du tänka "namespace / klass", etc.

Till exempel så är ju specifikt "math.Abs" i Golang, "math.abs" i python, och "Math.Abs" i C# i stort sett helt ekvivalenta, trots att det finns vissa skillnader mellan paket/moduler/klasser och funktioner/metoder i det allmäna fallet.

Visa signatur

Arbets- / Spelstation: Arch Linux - Ryzen 5 3600 - RX 7900 XT - 32G DDR4
Server: Arch Linux - Core i5-10400F - 16G DDR4