一、C#类型转换
含义:把数据从一种类型转换为另一种类型(也叫类型铸造);在C#中有两种转换方式:
- 隐式类型转换;eg:从小的整数转为大的整数类型,从派生类转换为基类;
- 显示类型转换;即强制类型转换,其需要强制转换运算符,并且会造成数据丢失;
下面的demo 展示了显示类型转换:
double d = 1265.66;
int i;
i = (int)d;
Console.WriteLine("强制类型转换的结果为:{0}", i);
Console.ReadKey();
运行结果为:
二、C#强制类型转换方法
C#提供了下列内置的类型转换方法
下面的demo将不同的值类型转换为string类型
class Program
{
//JdJos.Rectangle rectangle = new JdJos.Rectangle();
static void Main(string[] args)
{
int i = 88;
float f = 56.25f;
double d = 894.59489;
bool b = true;
Console.WriteLine("将整型转换为string类型:{0}", i.ToString());
Console.WriteLine("将float转换为string类型:{0}", f.ToString());
Console.WriteLine("将double转换为string类型:{0}", d.ToString());
Console.WriteLine("将bool转换为string类型:{0}", b.ToString());
Console.ReadKey();
}
}
运行结果为:
笔记:
类型之间的转换————-Convert和Parse
String str = 666.ToString();
//如果要将str转为整型
//方法一:
int istr = Convert.ToInt16(str);
//方法二:
int istr2 = int.Parse(str);
Console.WriteLine("使用Convert将String类型转为int类型结果为:{0},使用Parse将同样数据转为int类型的结果为:{1}", istr, istr2);
Console.ReadKey();
运行结果为:
int.TryParse(string s, out int i);
该方式也是将数组内容的字符串转换为int类型,但是该方式比int.Parse(string s)好一些,它不会出现异常,最后一个参数result是输出值,如果转换成功则输出相应的值,转换失败则输出0.
String s1 = "abcd";
String s2 = "1234";
int a, b;
bool bol = int.TryParse(s1, out a);
Console.WriteLine("====================将string类型的abcd转为int类型======================");
if(bol ==true)