后端开发 \ C# \ C# 类型转换的一些简单方法

C# 类型转换的一些简单方法

总点击32
简介:隐式转换:C#默认的以安全方式进行的转换。本质是从小存储容量数据类型自动转换为大存储容量数据类型,从派生类转换为基类。

隐式转换:C# 默认的以安全方式进行的转换。本质是从小存储容量数据类型自动转换为大存储容量数据类型,从派生类转换为基类。

code:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace _20170916

{

class class1 { }

class class2:class1

{ }

class Program

{

static void Main(string[] args)

{

int a = 10;

long num = a;

class1 c1 = new class2();

Console.ReadKey();

}

}

}


显式转换:通过用户使用预定义的函数显式完成的,显式转换需要强制转换运算符。

转换类型的范围大小和从属关系和隐式转换相反。显式转换可能会导致数据出错,或者转换失败,甚至无法编译成功。

code:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace _20170916

{

class class1 { }

class class2:class1

{ }

class Program

{

static void Main(string[] args)

{

double i = 1.22;

int a = (int)i;

class1 c1 = new class1();

class2 c2=c1 as class2;

Console.WriteLine(c2 is class1);

Console.WriteLine(c2 is class2);

Console.WriteLine(c1 is class1);

Console.ReadKey();

}

}

}


运行的结果为:

False

False

True


类型之间的转换 - Convert 和 Parse

code:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace _20170916

{

class class1 { }

class class2:class1

{ }

class Program

{

static void Main(string[] args)

{

int a = 123;

string aa = a.ToString();

int b = Convert.ToInt32(aa);

int c = int.Parse(aa);

Console.WriteLine(b);

Console.WriteLine(c);

Console.ReadKey();

}

}

}


int.TryParse(string s,out int i)


该方式也是将数字内容的字符串转换为int类型,但是该方式比int.Parse(string s) 好一些,它不会出现异常,最后一个参数result是输出值,如果转换成功则输出相应的值,转换失败则输出0。

code:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace _20170916

{

class class1 { }

class class2:class1

{ }

class Program

{

static void Main(string[] args)

{

string s1 = "1234";

string s2 = "abcd";

int a,b;

bool bo1 = int.TryParse(s1,out a);

bool bo2 = int.TryParse(s2,out b);

Console.WriteLine(s1 + " "+bo1 +" "+ a);

Console.WriteLine(s2 + " " + bo2 + " " + b);

Console.ReadKey();

}

}

}


0人推荐

推荐文章

热门标签

意见反馈 常见问题 官方微信 返回顶部