1:int.Parse(一个参数)  

     此参数必须满足:

1 只能是字符串;

2 只能是 “整型” 字符串,即各种整型ToString()之后的形式,也不能为浮点型。

2:int.TryParse(参数a,参数b);

此方法可以看做是int.Parse()方法的升级,即做了一个异常处理,如果出现异常则返回false,并且将输出参数返回0;

注意,参数a, 非数字的字符串也是可以的,参数类型基本没有限制,

例如:

int b;
int.TryParse("54.1",out b);
Response.Write(b);

结果是:0

int b;
int.TryParse(null,out b);
Response.Write(b);

结果是:0

int b=12;
int.TryParse("fdfds",out b);
Response.Write(b);

结果是:0

int b=12;
int.TryParse("123456",out b);
Response.Write(b);

结果是:123456,不是12

3:Convert.ToInt32(一个参数)

此参数可以为多种类型,但这种字符串类型“dfadf”,“123.1”会报错,但是“123”整型字符串,是可以的

int b= Convert.ToInt32(null);
Response.Write(b);

结果:0

bool a = false;
int b= Convert.ToInt32(a);
Response.Write(b);

结果:0

int b= Convert.ToInt32(1253.1);
Response.Write(b);

结果:1253

int b= Convert.ToInt32(1253.5);
Response.Write(b);

结果:1254

4 (int)

浮点型只有Convert.ToInt32()和(int)能进行转换,但是也是进行取舍了的,Convert.ToInt32()采取的取舍是进行四舍五入,而(int)则是截取浮点型的整数部分,忽略小数部分,

例如Convert.ToInt32(1.4d)和(int)1.4d都返回1,Convert.ToInt32(1.5d)返回2,而(int)1.5d还是返回1;

根据综上所述

浮点型转为Int类型   用后面两个

整型字符串转为Int类型  前面三个都可以

但是如果不确定用户的输入类型,而且有可能用户输入的是非数字的话,用int.TryParse

Request.QueryString[]的值如果转化成int的话,感觉用int.TryParse比较好

int.Parse()、int.TryParse()和Convert.ToInt32()的区别的更多相关文章

  1. (int)、int.Parse()、int.TryParse()和Convert.ToInt32()的区别

    C#中(int).int.Parse().int.TryParse()和Convert.ToInt32()的区别   原文链接:http://www.cnblogs.com/leolis/p/3968 ...

  2. C#中(int)、int.Parse()、int.TryParse()和Convert.ToInt32()的区别

    转自:http://www.cnblogs.com/leolis/p/3968943.html 在编程过程中,数据转换是经常要用到的,C#中数据转换的方法很多,拿将目标对象转换为 整型(int)来讲, ...

  3. C#中(int)、int.Parse()、int.TryParse()和Convert.ToInt32()的区别 <转>

    作者:Statmoon 出处:http://leolis.cnblogs.com/   在编程过程中,数据转换是经常要用到的,C#中数据转换的方法很多,拿将目标对象转换为整型(int)来讲,有四种方法 ...

  4. C# int.Parse()、int.TryParse()与Convert.ToInt32()的区别

    1.(int)是一种类型转换:当我们觟nt类型到long,float,double,decimal类型,可以使用隐式转换,但是当我们从long类型到int类型就需要使用显式转换,否则会产生编译错误. ...

  5. c#中(int)、int.Parse()、int.TryParse、Convert.ToInt32的区别

    本文来自:http://blog.csdn.net/tangjunping/article/details/5443337 以前经常为这几种数据类型转换方式而迷茫,这次为了彻底搞清它们之间的区别和优缺 ...

  6. (int)、int.Parse()、int.TryParse()、Convert.ToInt32()区别

    请看代码: //1.null. //int i1 = (int)null;//编译时报错:无法将“null”转换为“int”,因为后者是不可以为“null”的值类型. //int i2 = int.P ...

  7. Convert.ToInt32,int.Parse,int.TryParse,(int)的区别

    1 (int)变量名[强制类型转换] 该转换方式主要用于数字类型转换,从int类型到long,float,double,decimal类型,可以使用隐式转换,但是从long类型到int类型就需要使用显 ...

  8. (int),Int32.Parse() 和 Convert.toInt32() 的区别

    在 C# 中,(int),Int32.Parse() 和 Convert.toInt32() 三种方法有何区别? int 关键字表示一种整型,是32位的,它的 .NET Framework 类型为 S ...

  9. convert与int.parse int

    1,convert :适合将object 转换 int:简单数据转换 int.parse:将string类型转换为int 2,convert:对于空值返回0 不会报异常 int.parse:将会抛出异 ...

随机推荐

  1. RS232,RS422串口标准小结

    RS232和RS422都是广泛使用的异步串行接口标准.由于它们实现简单且占用IO口资源少,在低速传输下是不错的方案. RS232是单端走线,最高波特率为115200,传输最远距离不超过150米,它的逻 ...

  2. 搭建java开发环境、使用eclipse编写第一个java程序

    搭建java开发环境.使用eclipse编写第一个java程序 一.Java 开发环境的搭建 1.首先安装java SDK(简称JDK). 点击可执行文件 jdk-6u24-windows-i586. ...

  3. Android Soap实例

    // 指定命名空间 private static final String NAMESPACE = "http://WebXml.com.cn/"; // 给出接口地址 priva ...

  4. BZOJ 1858 线段树

    标记会重叠需要判断. #include <bits/stdc++.h> using namespace std; inline int Max(int x,int y) {return x ...

  5. c++11新的小猫腻

    1.void*指针的使用,平时见得也很多了,至于为什么使用void* 指针,很多人有自己的见解,反正普通指针轻轻松松的转向void * 指针,但是void*指针转向其他的指针都要采用强制转换的. 2. ...

  6. PCH文件

    作用:xcode5 自带的一个文件,xcode以后这个文件需要自己手动创建(这个是xcode5 和xcode6最大的区别)提前编译文件,一般情况下.我们在pch文件中#import一些项目中常用的软件 ...

  7. iOS 宏条件编译

    在工程的 build settings 中的 preprocessor macros 下, debug: DEBUG=1 TestApi=1 #if !defined (TestApi) config ...

  8. 【JS】IE兼容placeholder

    直接上代码: $(document).ready(function () { var doc = document, textareas = doc.getElementsByTagName('tex ...

  9. 【JS】HTMLprop与attr的区别

    与prop一样attr也可以用来获取与设置元素的属性.区别在于,对于自定义属性和选中属性的处理.选中属性指的是 checked,selected 这2种属性1. 对于自定义属性 attr能够获取,pr ...

  10. Kerberos简介及常见问题

    基本描述 Kerberos使用Needha-Schroeder协议作为它的基础.它使用了一个由两个独立的逻辑部分:认证服务器和票据授权服务器组成的"可信赖的第三方",术语称为密钥分 ...