Perustyyppimuunnos
Pyyhkäise näyttääksesi valikon
Edellisessä luvussa opimme tyyppimuunnoksista, mutta ne eivät toimi merkkijonojen kanssa.
Kuvittele, että sinulla on merkkijono kuten "1234", joka esittää numeroa, ja haluat suorittaa sillä laskutoimituksia. Tämä ei onnistu ennen kuin muutat sen numerotyypiksi. Tässä kohtaa tyyppimuunnos on hyödyllinen.
Tyyppimuunnos tehdään käyttämällä erityisiä Convert-metodeja. Käymme näitä metodeja tarkemmin läpi myöhemmin, mutta ajattele niitä nyt ohjeina, jotka kertovat tietokoneelle, mitä tehdä.
Voit muuttaa string-tyypin int-tyyppiin käyttämällä Convert.ToInt32()-metodia. Näin se näyttää koodissa:
main.cs
1Convert.ToInt32(dataToConvert);
Esimerkki:
main.cs
1Convert.ToInt32("12345");
Tämä menetelmä ottaa vastaan arvon, muuntaa sen kokonaisluvuksi, jos mahdollista, ja palauttaa arvon kokonaislukumuodossa, jonka voimme joko tallentaa muuttujiin tai näyttää suoraan:
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")); } } }
Huomaa, että merkkijonon on sisällettävä kokonaisluku oikeassa muodossa, eli arvossa ei saa olla ylimääräisiä välilyöntejä tai symboleja, muuten syntyy virhe:
main.cs
123Convert.ToInt32("3.14"); // Error Convert.ToInt32(""); // Error Convert.ToInt32("30,000"); // Error
Toinen huomioitava seikka on, että Convert-funktiolle voidaan antaa minkä tahansa tyyppinen arvo, kunhan se on loogisesti muunnettavissa int-tyyppiseksi:
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. } } }
Muuntaminen int-tyypistä string-tyyppiin onnistuu käyttämällä Convert.ToString() -metodia:
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 } } }
Seuraavassa on luettelo yleisesti käytetyistä Convert-menetelmistä:
1. Mikä on tyyppimuunnoksen tarkoitus ohjelmoinnissa ja miksi se on tarpeellista, kun käsitellään numeroita esittäviä merkkijonoja?
2. Mitä menetelmää käyttäisit muuntaaksesi numeron sisältävän merkkijonon, kuten "1234", kokonaisluvuksi C#:ssa?
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme