C#难点逐个击破(9):类型转换
31
一
Posted by: walkingp in: c#
显式转换与隐式转换
类型之间的转换可以分为隐式转换与显式转换,如int类型可直接转换为long类型。
/*隐式转换*/
int intNum = 23;
long longNum1 = intNum;
也可进行显式转换;
/*显式转换*/
int intNum = 23;
long longNum2 = (long)intNum;
Parse
每个值类型都包含Parse()依法,它将字符串转换成对应的数值类型]
/*Parse转换*/
string text = "3.1415926E1";
float PI = float.Parse(text);
Convert
System.Convert属于.net framework中的类,为不可继承类,它在msdn中定义原型为
public sealed class Convert
System.Convert只支持预定义数量的类型,它支持的类型包括所有值类型加String类型的基本数据类型和Object类型,这里的基本数据类型为.net framework的数据类型。
/*Convert转换*/
bool isTrue=false;
string strNum = Convert.ToString(isTrue);
TryParse()
TryParse属于C#静态方法,所有基本数据类型均包含此方法。它返回bool类型,表示是否转换成功,它常搭配out来进行转换数据;若转换失败,它将返回false,不会引发异常。
/*TryParse转换*/
System.Console.Write("输入要转换的数值:");
string input = System.Console.ReadLine();//输入
int result;//转换结果
if (int.TryParse(input, out result))
{
System.Console.WriteLine("转换结果为:{0}", result);
}
else
{
System.Console.WriteLine("转换失败");
}
ToString()
所有的类型都支持ToString()方法,对于只有类型显式实现了ToString()的情况下才会返回该类型对象取值的字符串表示;其他类型ToString()只是返回数据类型的名称。
Object o = new object();
Console.WriteLine(o.ToString());
int age = 23;
Console.WriteLine(age.ToString());
bool isMale = true;
Console.WriteLine(isMale.ToString());

Related posts:
- C#难点逐个击破(2):out返回参数 之前提到ref是将原方法中的参数影响的结果返回到调用它的方法中,out与ref类似,相比之下,ref传递参数的地址,out是返回值。传值(by value)与传址(by reference)分别为普通传递参数方式与ref声明方式,传址方式在使用前需要ref关键词修饰;out为输出返回传递,与ref相同之处较多,其重要区别是在上一节讲到的ref在被引用方法中必须被初始化;out在被引用方法中一定要有返回值。 using System; /****************************** * Chapter:C#难点逐个击破(一) * Author:王洪剑...
- C#难点逐个击破(4):main函数 (貌似我是在写C#的学习笔记哦,不过反正可以利用这个机会来好好温习下基础知识,这其中很多知识点都属于平时视而见的小知识) 还记得读大学时初识计算机编程时的C语言,Main(){},那时还不明白入口函数是什么意思,只知道照抄书本上的示例,一行一行地跑printf看。 在C#中Main()属于主入口函数,我们知识C、C#属于编译语言,可以想象为一段程序最开始的头部部分,由Main()函数进入逐语句进行编译后执行。假如html页面也称作编程语言的话,那么它就属于从上到下一句一句(下载)执行;js也是由上到下执行,不过js相当诡异,变量作用域要特别对待;在asp.net中一般情况下是以Page_Load(object sender,EventArgs e)可以认为是主入口。 Main()中的string[] args参数 Main()函数必须使用static修饰,也就是说它必须是静态的,不可实例化——可以实例化的话程序就完蛋了(多线程!?)。默认的Main()函数是带形式参数的,形如static void Main(string[]...
- C#难点逐个击破(3):params数组参数 注意,这里的paras全称是array parameter,也就是数组参数。 paras类型参数主要用于在对数组长度未知(可变)的情况下进行函数声明。在方法声明中只允许一个paras关键字,并且该关键字只能为最后一个。 using System; /****************************** * Chapter:C#难点逐个击破(三) * Author:王洪剑...
- C#难点逐个击破(1):ref参数传递 c#...
- C#难点逐个击破(7):checked与unchecked checked 关键字用于对整型算术运算和转换显式启用溢出检查。 C#默认情况下,若常数表达式的值超过了目标类型的最大值,将会导致编译错误。 若目标数据类型不能容纳非常数表达式的数据,那么数据在赋值时会被截断。 class Program { ...
以上关联文章由 Yet Another Related Posts Plugin 提供支持。
Leave a reply