C#的string转换成int问题
usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;namespa...
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace third
{
class Program
{
static void Main(string[] args)
{
int a = System.Int32.Parse("-42");//语句1
Console.WriteLine(a+1);//语句2
Console.WriteLine(-42 + 1);//语句3
}
}
}
请问:用语句1实现语句2和直接使用语句3没什么区别啊,而且还比语句3多点。那么语句1到底有什么意义?怎么用才能体现他的价值啊?请说的详细点。 展开
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace third
{
class Program
{
static void Main(string[] args)
{
int a = System.Int32.Parse("-42");//语句1
Console.WriteLine(a+1);//语句2
Console.WriteLine(-42 + 1);//语句3
}
}
}
请问:用语句1实现语句2和直接使用语句3没什么区别啊,而且还比语句3多点。那么语句1到底有什么意义?怎么用才能体现他的价值啊?请说的详细点。 展开
推荐于2017-11-28
展开全部
语句1是 声明一个变量 a 并用.net的函数Parse(string) 将其字串转换成数字,前提是字符串可以转换,若出现字母等异常字符则转换失败,
语句2是在语句1的基础上 将数字 -42 +1 得到结果 -41并将其打印在Console(命令台)如果没有报错的话,也是隐士的把数字-41转换成了字符串打印出来,
语句3则没有用到上诉变量,直接使用数字常量运算 得到结果 -41 然后打印出来。
使用的时候一般不会直接在Parse中写入-42常量 一般是去textBox中区,所以取到的文本是字符串,字符串之间不能进行算术运算 "-42"+"1" 结果是 连接字符串"-421",所以必须转换成数字-42然后与数字 1进行 加法运算得到结果 -41 而不是进行 字符串的连接处理
运算符 + 有重载
语句2是在语句1的基础上 将数字 -42 +1 得到结果 -41并将其打印在Console(命令台)如果没有报错的话,也是隐士的把数字-41转换成了字符串打印出来,
语句3则没有用到上诉变量,直接使用数字常量运算 得到结果 -41 然后打印出来。
使用的时候一般不会直接在Parse中写入-42常量 一般是去textBox中区,所以取到的文本是字符串,字符串之间不能进行算术运算 "-42"+"1" 结果是 连接字符串"-421",所以必须转换成数字-42然后与数字 1进行 加法运算得到结果 -41 而不是进行 字符串的连接处理
运算符 + 有重载
展开全部
在这样是没啥区别,因为干的事情是一样的,都是-42+1
但是因为在这里,-42,是已知的
语句1涉及到数据类型的转换,把字符串转换成了整型
以后经常会用得到
比如一个textbox,用户输入的时候,用户输入什么,这是未知的,
所以你无法用语句3的方式来操作,得到的是string,
但是你要把它变为整型,就要用到语句1的语法了
多看几遍,我相信你会懂的。
但是因为在这里,-42,是已知的
语句1涉及到数据类型的转换,把字符串转换成了整型
以后经常会用得到
比如一个textbox,用户输入的时候,用户输入什么,这是未知的,
所以你无法用语句3的方式来操作,得到的是string,
但是你要把它变为整型,就要用到语句1的语法了
多看几遍,我相信你会懂的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
直接实现你这个简单的 -42+1 的功能的确是没有区别
但语句1实现的功能在于:
在符合数字格式的 string 到 int 类型转换过程中使用,并可以对错误的 string 数字格式的抛出相应的异常
举个例子:
string stringType = "12345";
int intType = (int)stringType; //错误,string 类型不能直接转换为 int 类型
int intType = Int32.Parse(stringType); //正确
看到上面这个例子了吗?
在进行类型转化的时候
当你输入的是字符串型的时候,C#是不会进行自动转换的,甚至用(int)都不可以
只能用Int32.Parse来进行显示转换
但语句1实现的功能在于:
在符合数字格式的 string 到 int 类型转换过程中使用,并可以对错误的 string 数字格式的抛出相应的异常
举个例子:
string stringType = "12345";
int intType = (int)stringType; //错误,string 类型不能直接转换为 int 类型
int intType = Int32.Parse(stringType); //正确
看到上面这个例子了吗?
在进行类型转化的时候
当你输入的是字符串型的时候,C#是不会进行自动转换的,甚至用(int)都不可以
只能用Int32.Parse来进行显示转换
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询