关于数据类型转换的补充知识
2007-01-31 09:28
567 查看
is(检查对象是否与给定类型兼容 )
1 object o = new object();
2 o = "hello";
3 System.Console.WriteLine("\"hello\"-string->{0}", o is string);
4 o = 123;
5 System.Console.WriteLine("123-string->{0}", o is string);
6 System.Console.WriteLine("123-String->{0}", o is String);
7 System.Console.WriteLine("123-int->{0}", o is int);
8 System.Console.WriteLine("123-Int32->{0}", o is Int32);
9 System.Console.WriteLine("123-Int16->{0}", o is Int16);
10 DateTime d = DateTime.Now;
11 System.Console.WriteLine("Now-DateTime->{0}", d is DateTime);
12 string dd = "2006-01-01";
13 System.Console.WriteLine("\"2006-01-01\"-DateTime->{0}", dd is DateTime);
as(用于在兼容的引用类型之间执行转换 )
1 //as只用于引用类型
2 object o = new object();
3 o = "hello";
4 System.Console.WriteLine(o as string);
5 o = 123;
6 System.Console.WriteLine(o as string);
7 System.Console.WriteLine(o as String);
8 //System.Console.WriteLine(o as int); as对值类型无效
9 //System.Console.WriteLine(o as Int32); as对值类型无效
10 //System.Console.WriteLine(o as Int16); as对值类型无效
11 //DateTime d = DateTime.Now; as对值类型无效
12 //System.Console.WriteLine(d as DateTime); as对值类型无效
13 //string dd = "2006-01-01"; as对值类型无效
14 //System.Console.WriteLine(dd as DateTime); as对值类型无效
checked/unchecked(对整型算术运算和显式转换启用溢出检查 ,否则算术运算回绕)
还记得我们前面对byte的一个转换吧,再看看下面,你就有更深的理解
1 byte b = 100;
2 System.Console.WriteLine((byte)(b + 200));//不抛出异常
3 System.Console.WriteLine(checked((byte)(b + 200)));//抛出异常
4 System.Console.WriteLine(unchecked((byte)(b + 200)));//不抛出异常
1 object o = new object();
2 o = "hello";
3 System.Console.WriteLine("\"hello\"-string->{0}", o is string);
4 o = 123;
5 System.Console.WriteLine("123-string->{0}", o is string);
6 System.Console.WriteLine("123-String->{0}", o is String);
7 System.Console.WriteLine("123-int->{0}", o is int);
8 System.Console.WriteLine("123-Int32->{0}", o is Int32);
9 System.Console.WriteLine("123-Int16->{0}", o is Int16);
10 DateTime d = DateTime.Now;
11 System.Console.WriteLine("Now-DateTime->{0}", d is DateTime);
12 string dd = "2006-01-01";
13 System.Console.WriteLine("\"2006-01-01\"-DateTime->{0}", dd is DateTime);
as(用于在兼容的引用类型之间执行转换 )
1 //as只用于引用类型
2 object o = new object();
3 o = "hello";
4 System.Console.WriteLine(o as string);
5 o = 123;
6 System.Console.WriteLine(o as string);
7 System.Console.WriteLine(o as String);
8 //System.Console.WriteLine(o as int); as对值类型无效
9 //System.Console.WriteLine(o as Int32); as对值类型无效
10 //System.Console.WriteLine(o as Int16); as对值类型无效
11 //DateTime d = DateTime.Now; as对值类型无效
12 //System.Console.WriteLine(d as DateTime); as对值类型无效
13 //string dd = "2006-01-01"; as对值类型无效
14 //System.Console.WriteLine(dd as DateTime); as对值类型无效
checked/unchecked(对整型算术运算和显式转换启用溢出检查 ,否则算术运算回绕)
还记得我们前面对byte的一个转换吧,再看看下面,你就有更深的理解
1 byte b = 100;
2 System.Console.WriteLine((byte)(b + 200));//不抛出异常
3 System.Console.WriteLine(checked((byte)(b + 200)));//抛出异常
4 System.Console.WriteLine(unchecked((byte)(b + 200)));//不抛出异常
相关文章推荐
- 关于数据类型转换的补充知识
- 关于数据类型转换的补充知识
- 关于数据类型转换的补充知识
- 0701学习笔记数据类型转换和循环嵌套,继续补充一些关于字符串的知识
- java关于float类型和int类型数据转换为字符串(吃软不吃硬)
- VC学习资料收集(2):关于数据类型转换
- Java基础小知识——基本数据类型和字符串以及字节数组的转换
- 关于caffe学习系列的一点补充——如何将float类型的特征数据存入lmdb
- C++运算符重载补充之不同数据间的类型转换
- 关于VC中的数据类型转换BSTR、char*和CString的深入研究。
- 关于基本数据类型转换的一个小问题
- ios 开发之 各种数据类型之间转换 (持续补充)
- T-SQL: 关于 Varbinary(Hex,Int) 与 Varchar(HexString) 之间的(数据类型)转换
- 关于C++和C#的自定义数据类型转换的一些思考
- 2.2 关于Python3 数据类型的补充学习
- 关于selectize,ajax动态获取数据,数据类型转换
- ABAP开发基础知识:7)数据类型的转换
- 关于java数据类型的转换
- 关于C#数据类型之间转换的问题
- 关于java 基本数据类型之间的转换