C#基础③——类型转换(int转double、double转int、Convert)

类型转换是什么?

不同数据类型间的转换,如:将int类型转换为string类型

为什么需要类型转换?

从控制台接收到的用户输入的内容都是string类型,如果要进行计算,就需要将接收到的内容转换成数值类型

什么是隐式转换?如下图

什么是强制转换?如下图

                              


一、代码展示

1.隐式转换:int——>double

                         

int num1 = 10;                      //int类型变量
int num2 = 3;                       //int类型变量
double sum = num1*0.1 / num2;       //double类型变量

Console.WriteLine("{0:0.00}",sum);  //使用占位符{0:0.00}表示结果保留两位小数,并在控制台输出
Console.ReadKey();

输出结果:0.33


2.强制转换

①、double——>int:变量前面加(int)

double number = 10.6;       //double类型变量并赋值
int num = (int)number;      //将double类型变量转换为int类型,变量前面加(int)

Console.WriteLine(num);     //在控制台输出结果
Console.ReadKey();

输出结果:10

 

②、int——>string:转换的变量名.to要转换的类型

int num = 10;                      //int类型变量
string result = num.ToString();    //转换为string类型变量,转换的变量名.to要转换的类型

Console.WriteLine(result);
Console.ReadKey();

输出结果:10

 

③、string——>int:

方法一、Convert转换工厂

方法

说明

Convert.ToInt16()

转换为整型(short)

Convert.ToInt32()

转换为整型(int)

Convert.ToInt64()

转换为整型(long)

Convert.ToChar()

转换为字符型(char)

Convert.ToString()

转换为字符串型(string)

Convert.ToDateTime()

转换为日期型(datetime)

Convert.ToDouble()

转换为双精度浮点型(double)

Conert.ToSingle()

转换为单精度浮点型(float)

                                              注意:用户想转换成什么类型,就to谁

Console.WriteLine("请输入你的语文成绩");         //系统提示用户输入
String strChinese = Console.ReadLine();        //接收用户输入的内容
int chinese = Convert.ToInt32(strChinese);     //接收到的内容位字符串型数据,转换为int类型

Console.WriteLine("您的语文成绩为:" + chinese );//在控制台输出
Console.ReadKey();

输出结果:您的语文成绩为:90

 

方法二、int.Parse(要转换的字符串变量)

try                                          //try catch语句,尝试下面的语句
{
    Console.WriteLine("请输入一个数字");      //提示用户输入内容
    string strAge = Console.ReadLine();      //接收用户输入内容
    int result = int.Parse(strAge);          //将接收的内容转换为int类型数值
    Console.WriteLine(result * 2);           //输出结果
}
catch                                        //如果出现异常,走下面的语句
{
    Console.WriteLine("您输入的内容无法转换成数字");   //输出错误提示语
}      
Console.ReadKey();

输出结果(异常情况):请输入一个数字
                                       咯咯咯咯
                                       您输入的内容不正确

 

方法三、int.TryParse(要转换的字符串变量)

Console.WriteLine("请输入一个数字");              //提示用户输入内容
string strAge = Console.ReadLine();              //接收用户输入的内容
int number = 0;
bool result = int.TryParse(strAge, out number);  //定义一个布尔类型变量,进行异常处理
                                                             
if (result)                                      //如果为trye则走句代码
{
    Console.WriteLine(number * 2);               //输出结果
}
else                                             //否则
{
   Console.WriteLine("您输入的内容不正确");
}
Console.ReadKey();

输出结果(异常情况):请输入一个数字
                                       咯咯咯咯
                                       您输入的内容不正确


二、总结:

int—>double

变量*0.1

double sum= number1 * 0.1 / number2;

double—>int

(int).变量名

int number = (int) num;

int—>string

变量名.toString()

string number = num.toString();

string—>int

Convert.to转换的类型(要转换的变量)

int number = Convert.toInt32(num);

double—>float

(float)小数

float number = (float)0.134;

三、拓展:

C#(int)中Convert、Parse、TryParse的区别:

https://www.cnblogs.com/xu-yi/p/11167410.html

https://www.jb51.net/article/35192.htm

猜你喜欢

转载自blog.csdn.net/weixin_43319713/article/details/108144735
今日推荐