C# 使用int.TryParse,Convert.ToInt32,(int)将浮点类型转换整数时的区别
2014-08-18 10:50
671 查看
int.TryParse,Convert.ToInt32,(int)
这几种类型在将浮点类型转换整数时是有差别
Convert.ToInt32则会进行四舍五入
int.TryParse只能转换整数,即浮点类型全部会返回0
(int)不会进行四舍五入,只取整数部分,小数点部分完全舍弃
using System;
public class DoubleToInt
{
public static void Main()
{
Test_DoubleToInt(
0.4
);
Test_DoubleToInt(
0.5
);
Console.ReadKey();
}
static void Test_DoubleToInt( double _testNumber)
{
int _i= 0
;
for ( int i= 0 ;i< 10 ;i++)
{
if (i!= 0
){
_testNumber+= 1
;
}
Console.WriteLine(
string .Format( "(int){0}={1}" ,_testNumber,( int
)(_testNumber)));
Console.WriteLine(
string .Format( "Convent.ToInt32({0})={1}"
,_testNumber,Convert.ToInt32(_testNumber)));
//int.TryParse只有转换整数类型,其他返回为0
int
.TryParse(_testNumber.ToString(), out _i);
Console.WriteLine(
string .Format( "int.TryParse({0})={1}"
,_testNumber,_i));
}
Console.WriteLine(
string .Empty);
}
}
http://www.cnblogs.com/Dely/p/3791951.html
http://stackoverflow.com/questions/11431793/convert-toint32-rounds-to-the-nearest-even-number
http://stackoverflow.com/questions/311696/why-does-net-use-bankers-rounding-as-defaul
这几种类型在将浮点类型转换整数时是有差别
Convert.ToInt32则会进行四舍五入
int.TryParse只能转换整数,即浮点类型全部会返回0
(int)不会进行四舍五入,只取整数部分,小数点部分完全舍弃
using System;
public class DoubleToInt
{
public static void Main()
{
Test_DoubleToInt(
0.4
);
Test_DoubleToInt(
0.5
);
Console.ReadKey();
}
static void Test_DoubleToInt( double _testNumber)
{
int _i= 0
;
for ( int i= 0 ;i< 10 ;i++)
{
if (i!= 0
){
_testNumber+= 1
;
}
Console.WriteLine(
string .Format( "(int){0}={1}" ,_testNumber,( int
)(_testNumber)));
Console.WriteLine(
string .Format( "Convent.ToInt32({0})={1}"
,_testNumber,Convert.ToInt32(_testNumber)));
//int.TryParse只有转换整数类型,其他返回为0
int
.TryParse(_testNumber.ToString(), out _i);
Console.WriteLine(
string .Format( "int.TryParse({0})={1}"
,_testNumber,_i));
}
Console.WriteLine(
string .Empty);
}
}
http://www.cnblogs.com/Dely/p/3791951.html
http://stackoverflow.com/questions/11431793/convert-toint32-rounds-to-the-nearest-even-number
http://stackoverflow.com/questions/311696/why-does-net-use-bankers-rounding-as-defaul
相关文章推荐
- 在c#中(int)、int.Parse()、int.TryParse、Convert.ToInt32()四种转换的区别
- C#中 (int)、int.Parse()、int.TryParse、Convert.ToInt32()四种转换的区别
- 在c#中(int)、int.Parse()、int.TryParse、Convert.ToInt32()四种转换的区别
- C#中 (int)、int.Parse()、int.TryParse、Convert.ToInt32()四种转换的区别 - 转
- 在c#中(int)、int.Parse()、int.TryParse、Convert.ToInt32()四种转换的区别
- bc#中(int)、int.Parse()、int.TryParse、Convert.ToInt32()四种转换的区别
- 20100924 学习记录:在c#中(int)、int.Parse()、int.TryParse、Convert.ToInt32()四种转换的区别
- 黑马程序员--c#中(int)、int.Parse()、int.TryParse、Convert.ToInt32()四种转换的区别
- C#中(int)、int.Parse()、int.TryParse、Convert.ToInt32()四种转换的区别
- c#中(int)、int.Parse()、int.TryParse、Convert.ToInt32()四种转换的区别
- C#整数三种强制类型转换int、Convert.ToInt32()、int.Parse()的区别
- C# 使用DateTime.TryParseExact将自定义日期类型转换成日期
- c#中(int)、int.Parse()、int.TryParse、Convert.ToInt32的区别
- c#中(int)、int.Parse()、int.TryParse、Convert.ToInt32的区别详解
- int.Parse(),int.TryParse(),Convert.ToInt32(), (int)转换为数字类型方法简介
- c#语言中  (int)、int.Parse()、int.TryParse、Convert.ToInt32的区别
- C#/.NET整数的三种强制类型转换(int)、Convert.ToInt32()、int.Parse()的区别
- C#/.NET整数的三种强制类型转换(int)、Convert.ToInt32()、int.Parse()的区别
- c#中(int)、int.Parse()、int.TryParse、Convert.ToInt32的区别
- 【转】c#语言中 (int)、int.Parse()、int.TryParse、Convert.ToInt32的区别