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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李盛利 中级黑马   /  2012-10-25 20:07  /  1734 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

定义变量的时候一定要赋值吗??

评分

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

查看全部评分

5 个回复

正序浏览
全局的不用
局部的必须要赋值

评分

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

查看全部评分

回复 使用道具 举报
看个人的爱好吧,变量定义时可以不赋值,但是在调用的时候就需要。如果是成员变量的话,系统会给他初始化,赋默认值,比如int为0,bool类型为flase,string类型为null等。
但是如果是方法里面定义的变量,系统不会给他赋值,在调用之前需要明确给他指定一个值,不过最好还是定义的时候赋一下值好。这样的代码看上去比较完美。

评分

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

查看全部评分

回复 使用道具 举报
最好要初始化。0,null

评分

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

查看全部评分

回复 使用道具 举报
最好是赋值,如果你是在if语句中赋值,就会出现该类型没有初始化的错误。所以在你声明时,如果是string类型,就给个空字符。string str=""。如果是int就给个0值。

评分

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

查看全部评分

回复 使用道具 举报
全局变量自动赋予初始值,局部变量必须手动赋值
不过最好还是全部都手动赋值,毕竟就算是自动赋值,赋的也是0或者null。

评分

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

查看全部评分

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