Grundlæggende Typekonvertering
I det forrige kapitel lærte vi om type-casting, men det virker ikke med strenge.
Forestil dig, at du har en streng som "1234", der repræsenterer et tal, og du ønsker at udføre matematiske operationer med den. Det kan du ikke, før du ændrer den til en numerisk type. Det er her, typekonvertering bliver nyttig.
Typekonvertering udføres ved hjælp af specifikke Convert-metoder. Vi vil senere gå mere i dybden med disse metoder, men for nu kan du betragte dem som instruktioner, der fortæller computeren at udføre noget bestemt.
For at ændre en string til en int, kan du bruge metoden Convert.ToInt32(). Sådan ser det ud i kode:
main.cs
1Convert.ToInt32(dataToConvert);
Eksempel:
main.cs
1Convert.ToInt32("12345");
Denne metode modtager en værdi, konverterer den til et heltal, hvis det er muligt, og returnerer værdien i heltalsformat, som vi enten kan gemme i variabler eller vise direkte:
main.cs
1234567891011121314using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int val = Convert.ToInt32("12345"); Console.WriteLine(val); Console.WriteLine(Convert.ToInt32("67890")); } } }
Bemærk, at strengen skal indeholde et heltal i det korrekte format, hvilket betyder, at der ikke må være ekstra mellemrum eller symboler i værdien, ellers vil det give en fejl:
main.cs
123Convert.ToInt32("3.14"); // Error Convert.ToInt32(""); // Error Convert.ToInt32("30,000"); // Error
En anden vigtig pointe er, at enhver form for værdi kan videregives til Convert-funktionen, så længe den logisk kan konverteres til en int:
main.cs
1234567891011121314using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int val = Convert.ToInt32(1234.567); Console.WriteLine(val); // The value is rounded to the nearest integer. } } }
For at konvertere en int til string, kan vi bruge metoden Convert.ToString():
main.cs
1234567891011121314using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int number = 1234567; string text = Convert.ToString(number); Console.WriteLine(text); // Output: 1234567 } } }
Følgende er en liste over de mest anvendte Convert-metoder:
1. Hvad er formålet med typekonvertering i programmering, og hvorfor er det nødvendigt, når man arbejder med strenge, der repræsenterer tal?
2. Hvilken metode ville du bruge til at konvertere en streng, der indeholder et tal, såsom "1234", til et heltal i C#?
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Awesome!
Completion rate improved to 1.59
Grundlæggende Typekonvertering
Stryg for at vise menuen
I det forrige kapitel lærte vi om type-casting, men det virker ikke med strenge.
Forestil dig, at du har en streng som "1234", der repræsenterer et tal, og du ønsker at udføre matematiske operationer med den. Det kan du ikke, før du ændrer den til en numerisk type. Det er her, typekonvertering bliver nyttig.
Typekonvertering udføres ved hjælp af specifikke Convert-metoder. Vi vil senere gå mere i dybden med disse metoder, men for nu kan du betragte dem som instruktioner, der fortæller computeren at udføre noget bestemt.
For at ændre en string til en int, kan du bruge metoden Convert.ToInt32(). Sådan ser det ud i kode:
main.cs
1Convert.ToInt32(dataToConvert);
Eksempel:
main.cs
1Convert.ToInt32("12345");
Denne metode modtager en værdi, konverterer den til et heltal, hvis det er muligt, og returnerer værdien i heltalsformat, som vi enten kan gemme i variabler eller vise direkte:
main.cs
1234567891011121314using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int val = Convert.ToInt32("12345"); Console.WriteLine(val); Console.WriteLine(Convert.ToInt32("67890")); } } }
Bemærk, at strengen skal indeholde et heltal i det korrekte format, hvilket betyder, at der ikke må være ekstra mellemrum eller symboler i værdien, ellers vil det give en fejl:
main.cs
123Convert.ToInt32("3.14"); // Error Convert.ToInt32(""); // Error Convert.ToInt32("30,000"); // Error
En anden vigtig pointe er, at enhver form for værdi kan videregives til Convert-funktionen, så længe den logisk kan konverteres til en int:
main.cs
1234567891011121314using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int val = Convert.ToInt32(1234.567); Console.WriteLine(val); // The value is rounded to the nearest integer. } } }
For at konvertere en int til string, kan vi bruge metoden Convert.ToString():
main.cs
1234567891011121314using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int number = 1234567; string text = Convert.ToString(number); Console.WriteLine(text); // Output: 1234567 } } }
Følgende er en liste over de mest anvendte Convert-metoder:
1. Hvad er formålet med typekonvertering i programmering, og hvorfor er det nødvendigt, når man arbejder med strenge, der repræsenterer tal?
2. Hvilken metode ville du bruge til at konvertere en streng, der indeholder et tal, såsom "1234", til et heltal i C#?
Tak for dine kommentarer!