C# 數(shù)據(jù)類型轉(zhuǎn)換
前言
在使用
Console.Read()或Console.ReadLine()進(jìn)行輸入時(shí),和Python語(yǔ)言的input()類似兩者都是把鍵盤鍵入的內(nèi)容作為
string類型返回,所以有些數(shù)據(jù)需要經(jīng)過(guò)數(shù)據(jù)類型的轉(zhuǎn)換才能進(jìn)行計(jì)算。
相關(guān)介紹
一、函數(shù)方法
下面羅列的函數(shù)方法不是全部,僅列舉一些常用的
double這種有小寫(xiě)類型名的是數(shù)據(jù)類型,Double則是System中的一個(gè)類 double會(huì)被解釋器解釋為Double類,有的數(shù)據(jù)類型如DateTime則沒(méi)有縮寫(xiě)
| 函數(shù)方法 | 介紹 |
|---|---|
| 數(shù)據(jù).GetType() | 返回?cái)?shù)據(jù)的類型 |
| Console.ReadLine() | 讀取一行用戶輸入,返回字符串 |
| Console.WriteLine(數(shù)據(jù)) | 將數(shù)據(jù)打印到控制臺(tái)并換行 |
| Convert.ToBoolean(數(shù)據(jù)) | 將數(shù)據(jù)轉(zhuǎn)換為bool類型(布爾),返回對(duì)應(yīng)值 |
| Convert.ToChar(數(shù)據(jù)) | 將數(shù)據(jù)轉(zhuǎn)換為char類型(字符),返回對(duì)應(yīng)值 |
| Convert.ToDateTime(數(shù)據(jù)) | 將數(shù)據(jù)轉(zhuǎn)換為DateTime類型,返回對(duì)應(yīng)值 |
| Convert.ToDecimal(數(shù)據(jù)) | 將數(shù)據(jù)轉(zhuǎn)換為decimal類型(高精度小數(shù)),返回對(duì)應(yīng)值 |
| Convert.ToDouble(數(shù)據(jù)) | 將數(shù)據(jù)轉(zhuǎn)換為double類型(雙精度小數(shù)),返回對(duì)應(yīng)值 |
| Convert.ToSigle(數(shù)據(jù)) | 將數(shù)據(jù)轉(zhuǎn)換為float類型(單精度小數(shù)),返回對(duì)應(yīng)值 |
| Convert.ToInt16(數(shù)據(jù)) | 將數(shù)據(jù)轉(zhuǎn)換為16位有符號(hào)int類型(整數(shù)),返回對(duì)應(yīng)值 |
| Convert.ToInt32(數(shù)據(jù)) | 將數(shù)據(jù)轉(zhuǎn)換為32位有符號(hào)int類型(整數(shù)),返回對(duì)應(yīng)值 |
| Convert.ToInt64(數(shù)據(jù)) | 將數(shù)據(jù)轉(zhuǎn)換為64位有符號(hào)int類型(整數(shù)),返回對(duì)應(yīng)值 |
| Convert.ToUInt16(數(shù)據(jù)) | 將數(shù)據(jù)轉(zhuǎn)換為16位無(wú)符號(hào)int類型(整數(shù)),返回對(duì)應(yīng)值 |
| Convert.ToUInt32(數(shù)據(jù)) | 將數(shù)據(jù)轉(zhuǎn)換為32位無(wú)符號(hào)int類型(整數(shù)),返回對(duì)應(yīng)值 |
| Convert.ToUInt64(數(shù)據(jù)) | 將數(shù)據(jù)轉(zhuǎn)換為64位無(wú)符號(hào)int類型(整數(shù)),返回對(duì)應(yīng)值 |
| Convert.ToString(數(shù)據(jù)) | 將數(shù)據(jù)轉(zhuǎn)換為string類型(字符串),返回對(duì)應(yīng)值 |
二、類型轉(zhuǎn)換
[1]. 使用Convert轉(zhuǎn)換
轉(zhuǎn)換方法:
類型名 變量名 = Convert.To類型(數(shù)據(jù))
Test為項(xiàng)目名稱,Program為類名
decimal數(shù)據(jù)在初始化時(shí)需要在數(shù)據(jù)的末尾添加后綴m或M,否則會(huì)被編譯器認(rèn)為創(chuàng)建的是double類型而報(bào)錯(cuò)

using System;
namespace Test
{
class Program
{
static void Main(string[] args)
{
string input = Console.ReadLine();//輸入
decimal money = Convert.ToDecimal(input);//類型轉(zhuǎn)換
Console.WriteLine(money);//輸出
Console.WriteLine("{0}被轉(zhuǎn)換為{1}",input.GetType(),money.GetType());
Console.ReadKey();
}
}
}
[2]. 使用類型名進(jìn)行轉(zhuǎn)換
第二種轉(zhuǎn)換方式,可使用
(類型名)數(shù)據(jù)進(jìn)行轉(zhuǎn)換這種方式和C中類型轉(zhuǎn)換的方式是一樣的

using System;
namespace Test
{
class Program
{
static void Main(string[] args)
{
double data1 = 22.11;
float data2 = (float)data1;//類型轉(zhuǎn)換
Console.WriteLine(data1);//輸出
Console.WriteLine(data2);//輸出
Console.WriteLine("{0}被轉(zhuǎn)換為{1}",data1.GetType(),data2.GetType());
Console.ReadKey();
}
}
}
總結(jié)
本篇文章就到這里了,希望能給您帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
- C#中的自動(dòng)類型轉(zhuǎn)換和強(qiáng)制類型轉(zhuǎn)換
- 詳解c# 強(qiáng)制轉(zhuǎn)換和類型轉(zhuǎn)換
- C#數(shù)據(jù)類型轉(zhuǎn)換(顯式轉(zhuǎn)型、隱式轉(zhuǎn)型、強(qiáng)制轉(zhuǎn)型)
- C#類型轉(zhuǎn)換之自定義隱式轉(zhuǎn)換和顯式轉(zhuǎn)換
- C#實(shí)現(xiàn)數(shù)組元素的數(shù)據(jù)類型轉(zhuǎn)換方法詳解
- C#預(yù)定義的基礎(chǔ)類型轉(zhuǎn)換
- 詳解C#如何實(shí)現(xiàn)隱式類型轉(zhuǎn)換
- C#避免類型轉(zhuǎn)換異常的三種方法
- C# 類型轉(zhuǎn)換(隱式類型,顯式類型,自定義類型)
相關(guān)文章
Spring Data JPA 如何使用QueryDsl查詢并分頁(yè)
這篇文章主要介紹了Spring Data JPA 如何使用QueryDsl查詢并分頁(yè),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11
Maven報(bào)錯(cuò)之導(dǎo)入Junit包來(lái)實(shí)現(xiàn)@Test注解問(wèn)題
這篇文章主要介紹了Maven報(bào)錯(cuò)之導(dǎo)入Junit包來(lái)實(shí)現(xiàn)@Test注解問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11
mybatis如何使用Java8的日期LocalDate和LocalDateTime詳解
這篇文章主要給大家介紹了關(guān)于mybatis如何使用Java8的日期LocalDate和LocalDateTime的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2017-09-09
SpringBoot的三大開(kāi)發(fā)工具小結(jié)
本文主要介紹了SpringBoot的三大開(kāi)發(fā)工具,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-02-02
Java基礎(chǔ)之線程鎖相關(guān)知識(shí)總結(jié)
今天給大家?guī)?lái)的是關(guān)于Java線程的相關(guān)知識(shí),文章圍繞著Java線程鎖展開(kāi),文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下2021-06-06
Springsecurity Oauth2如何設(shè)置token的過(guò)期時(shí)間
如果用戶在指定的時(shí)間內(nèi)有操作就給token延長(zhǎng)有限期,否則到期后自動(dòng)過(guò)期,如何設(shè)置token的過(guò)期時(shí)間,本文就來(lái)詳細(xì)的介紹一下2021-08-08

