Grundlæggende Typekonvertering
I det forrige kapitel lærte vi om type-casting, men det fungerer 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 gøre, før du ændrer den til en numerisk type. Dette er, hvor typekonvertering er nyttig.
Typekonvertering udføres ved hjælp af specifikke Convert-metoder. Vi vil gennemgå disse metoder mere detaljeret senere, men for nu kan du betragte dem som instruktioner, der fortæller computeren at udføre en bestemt handling.
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 enten kan gemmes i variabler eller vises 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 der opstå 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
Fantastisk!
Completion rate forbedret til 1.67
Grundlæggende Typekonvertering
Stryg for at vise menuen
I det forrige kapitel lærte vi om type-casting, men det fungerer 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 gøre, før du ændrer den til en numerisk type. Dette er, hvor typekonvertering er nyttig.
Typekonvertering udføres ved hjælp af specifikke Convert-metoder. Vi vil gennemgå disse metoder mere detaljeret senere, men for nu kan du betragte dem som instruktioner, der fortæller computeren at udføre en bestemt handling.
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 enten kan gemmes i variabler eller vises 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 der opstå 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!