A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 刘欢(安阳) 中级黑马   /  2012-8-28 09:33  /  3005 人查看  /  13 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Convert Toint32(Console.readline())可以把输入的字符转转换为int类型
那么
  1.字符串转换为double/decimal是不是Convert Todouble(Console.readline())或者Convert Todecimal(Console.readline())?
2.为什么转换为int要Toint32呢?32是指什么?是指32位系统吗?是的话win7的64位系统要Toint64么?
3.字符串转double/decimal为什么不加32呢?

13 个回复

倒序浏览
由于数字类型根据其最大长度所分类型较多
32指的是数字类型的长度,int32就相当与一般使用的int类型,而int64则相当于一般使用的long型,int16则是short类型了。
你可以在VS中用分辨转换成不同int类型然后查看其返回值类型就可以看到差别了(我就是这么干的,呵呵)。
回复 使用道具 举报
1. 强转有以下几种:
    convert.ToInt16;           //转换成16位的整数
    convert.ToInt32;          //转换成32位的整数
    convert.ToInt64;         //转换成64位的整数
    convert.ToBoolean();   //转换成 bool 值
    convert.ToString();     //转换成 字符串
    convert.ToDouble();   //转换成小数
    convert.ToString();    //转换成字符串
    convert.ToSByte;       //转换成字节
2. Convert转换整数有三种方式,是由于整数分短整型(16位),长整型(64位)和整型(32位);
2. Convert不再是内存级别的转换,而是考虑数据意义的转换;
3. Convert是一个加工和改造的过程;
4. 除了整型外,其他类型就比较单一,例如convert.ToString()和convert.ToBoolean();
回复 使用道具 举报
32表示长度,int32就是32位的整形。long就是int64 即64位整形
数在计算机内存中是以二进制表示的,你可以把计算机内存想向成一块一块的,32位就是使用内存中的32块来存储这个数。C:\Documents and Settings\Administrator\桌面\1.jpg
回复 使用道具 举报
图没传上去  在传一次

1.jpg (52.31 KB, 下载次数: 102)

1.jpg
回复 使用道具 举报
int32一般指的是普通整形 即32位的整数类型 int16指的是短整型short,在内存中使用16位的二进制数表示的,  int64指的是长整形在内存中使用64位的二进制数表示的,这里指的位数是和系统的位数是没有关系的
回复 使用道具 举报
第一个问题你的想法是正确的,各个类型都有其强制转换的类型的, int 关键字表示一种整型,是32位的,不同的数据类型,其在电脑中的位数也是不同的,所以不能都用32来修饰,跟电脑系统没有关系,你用什么系统的电脑在写同样的程序时代码是一样的。
回复 使用道具 举报
刘欢(安阳) 来自手机 中级黑马 2012-8-28 22:45:21
8#
本帖最后由 刘欢(安阳) 于 2012-8-28 22:51 编辑
冯雅伦 发表于 2012-8-28 09:45
由于数字类型根据其最大长度所分类型较多
32指的是数字类型的长度,int32就相当与一般使用的int类型,而int ...


好方法!我老觉得自己在vs里缺乏探索精神
回复 使用道具 举报
刘欢(安阳) 来自手机 中级黑马 2012-8-28 22:48:32
9#
许庭洲 发表于 2012-8-28 10:07
1. 强转有以下几种:
    convert.ToInt16;           //转换成16位的整数
    convert.ToInt32;           ...

强大!好全面
回复 使用道具 举报
刘欢(安阳) 来自手机 中级黑马 2012-8-28 22:49:24
10#
hehe04 发表于 2012-8-28 10:50
32表示长度,int32就是32位的整形。long就是int64 即64位整形
数在计算机内存中是以二进制表示的,你可以把 ...

谢谢,你的比喻让我印象深刻
回复 使用道具 举报
刘欢(安阳) 来自手机 中级黑马 2012-8-28 22:51:05
11#
王龙喜 发表于 2012-8-28 11:48
第一个问题你的想法是正确的,各个类型都有其强制转换的类型的, int 关键字表示一种整型,是32位的,不同 ...

还好,本来还担心换了win7会出问题来,谢谢喽
回复 使用道具 举报
刘欢(安阳) 来自手机 中级黑马 2012-8-28 22:55:54
12#
李 玉林 发表于 2012-8-28 11:04
int32一般指的是普通整形 即32位的整数类型 int16指的是短整型short,在内存中使用16位的二进制数表示的,  ...

了解了,原来就是不同内存的int型的啊
回复 使用道具 举报
够详细的呀  学习学习
回复 使用道具 举报
蔡嘉 中级黑马 2012-10-19 21:51:36
14#
可转到定义(F12),分别看一下,再
Console.WriteLine(Convert.ToInt64(Console.ReadLine()));
Console.WriteLine(Convert.ToInt16(Console.ReadLine()));
Console.WriteLine(Convert.ToInt32(Console.ReadLine()));
到控制台看一下打印结果。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马