资源描述:
《c#数据类型转换,byte,float,double,char类型间的转换方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、c#数据类型转换,BYTE,float,double,char类型间的转换方法2010年07月16日星期五13:00最近由于编程的需要,对C#的类型转换做了一些研究,其内容涉及C#的装箱/拆箱/别名、数值类型间相互转换、字符的ASCII码和Unicode码、数值字符串和数值之间的转换、字符串和字符数组/字节数组之间的转换、各种数值类型和字节数组之间的转换、十六进制数输出以及日期型数据的一些转换处理,在这里与大家分享―― 1.装箱、拆箱还是别名 许多C#.NET的书上都有介绍int->Int32是一个装箱的过程,反之则是
2、拆箱的过程。许多其它变量类型也是如此,如:short<->Int16,long<->Int64等。对于一般的程序员来说,大可不必去了解这一过程,因为这些装箱和拆箱的动作都是可以自动完成的,不需要写代码进行干预。但是我们需要记住这些类型之间的关系,所以,我们使用“别名”来记忆它们之间的关系。 C#是全面向对象的语言,比Java的面向对象都还彻底――它把简单数据类型通过默认的装箱动作封装成了类。Int32、Int16、Int64等就是相应的类名,而那些我们熟悉的、简单易记的名称,如int、short、long等,我们就可以把
3、它称作是Int32、Int16、Int64等类型的别名。 那么除了这三种类型之外,还有哪些类有“别名”呢?常用的有如下一些: bool->System.Boolean(布尔型,其值为true或者false) char->System.Char(字符型,占有两个字节,表示1个Unicode字符) byte->System.Byte(字节型,占1字节,表示8位正整数,范围0~255) sbyte->System.SByte(带符号字节型,占1字节,表示8位整数,范围-128~127) ushort->System.
4、UInt16(无符号短整型,占2字节,表示16位正整数,范围0~65,535) uint->System.UInt32(无符号整型,占4字节,表示32位正整数,范围0~4,294,967,295) ulong->System.UInt64(无符号长整型,占8字节,表示64位正整数,范围0~大约10的20次方) short->System.Int16(短整型,占2字节,表示16位整数,范围-32,768~32,767) int->System.Int32(整型,占4字节,表示32位整数,范围-2,147,483,64
5、8到2,147,483,647) long->System.Int64(长整型,占8字节,表示64位整数,范围大约-(10的19)次方到10的19次方) float->System.Single(单精度浮点型,占4个字节) double->System.Double(双精度浮点型,占8个字节) 我们可以用下列代码做一个实验: privatevoidTestAlias(){ //this.textBox1是一个文本框,类型为System.Windows.Forms.TextBox //设计中已经将其Multil
6、ine属性设置为true bytea=1;charb='a';shortc=1; intd=2;longe=3;uintf=4;boolg=true; this.textBox1.Text=""; this.textBox1.AppendText("byte->"+a.GetType().FullName+""); this.textBox1.AppendText("char->"+b.GetType().FullName+""); this.textBox1.AppendText("short->"+
7、c.GetType().FullName+""); this.textBox1.AppendText("int->"+d.GetType().FullName+""); this.textBox1.AppendText("long->"+e.GetType().FullName+""); this.textBox1.AppendText("uint->"+f.GetType().FullName+""); this.textBox1.AppendText("bool->"+g.GetType().F
8、ullName+""); } 在窗体中新建一个按钮,并在它的单击事件中调用该TestAlias()函数,我们将看到运行结果如下: byte->System.Byte char->System.Char short->System.Int16 int->System.Int32 long