2 haozibj haozibj 于 2016.03.05 09:56 提问

java初学者,求大神指点

int i = 0;
int sum;
while(i<100) {
sum =i;
sum+=i;
i++;

}
System.out.println(sum);

这是主方法里面运行的代码,错误信息提示输出行的sum未初始化,我不太懂,为什么,求高手指点

11个回答

fascinatingGirl
fascinatingGirl   2016.03.05 10:00

给sum赋值就ok了

fascinatingGirl
fascinatingGirl   2016.03.05 10:01

赋初值:int sum = 0;

haozibj
haozibj while循环里不是进行赋初值跟赋值操作了吗
2 年多之前 回复
baidu_34176409
baidu_34176409   2016.03.05 10:47

sum是局部变量吧,如果是全局变量的话就不用赋初值,会有默认值的,但是 局部变量在使用前必须初始化或者赋值

Leizi030017
Leizi030017   2016.03.05 10:08

int sum=0;
未进行赋值

haozibj
haozibj while循环里不是进行赋初值跟赋值操作了吗
2 年多之前 回复
qq_19558705
qq_19558705   Ds   Rxr 2016.03.05 10:11

java 和 c 是不一样的。int sum ; 这里应该会有一个黄色警告,只需在后面初始化就可以了。int sum = 0;

qq_19558705
qq_19558705 回复haozibj: 这是java的规则,没办法。赋值和初始化是不一样的。如果你连站的地方都没有,怎么去做事?
2 年多之前 回复
haozibj
haozibj while循环里不是进行赋初值跟赋值操作了吗
2 年多之前 回复
haozibj
haozibj   2016.03.05 10:12

while循环里不是进行赋初值跟赋值操作了吗

wojiushiwo945you
wojiushiwo945you   Ds   Rxr 2016.03.05 10:13

Java在编写方法是变量定义时必须初始化赋初始值。直接定义变量是给个初始值,后者使用时再修改赋值。

AinUser
AinUser   2016.03.05 10:19

int i = 0;
int sum = 0;
while(i<100)
for( sum =i; sum+=i; i++){
System.out.println(sum);
}

kedi_study
kedi_study   2016.03.05 10:28

Java规定定义局部变量时必须手动赋初始值 ,你的int sum的定义应该是在方法里定义的吧,这样的话它就是局部变量,就的在定义的时候赋初始值,比如int sum = 0;你在while里赋初始值已经晚了,

xionglangs
xionglangs   Rxr 2016.03.05 13:18

sum =i;你这个不叫初始化,你这个叫赋值,但在java中,八大数据类性在使用的时候有2种情况,
一种是类的
class A{
private int i;
}
这一种在使用的时候不需要初始化,一般是set方法赋值,get方法取值。
另一种是直接在方法里面
public void function(){
int i =0;
}
这个在使用的时候一定要初始化,要给它一个定值,如果你给它一个变量,这应该就直接变为了赋值,并不是初始化。

共11条数据 1 尾页
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
java题库8
1. 一个没有实现Serializable接口的父类,编写一个能够序列化的子类 ,只要父类实现了序列化的接口,或者,子类实现了序列化的接口就可以序列化 “transient”——“瞬态”,先不说这个翻译是否恰当,这个变量关键字一直不曾使用,简单的说就是被瞬态定义的变量不可序列号。或者这么给他换个名字——“不可序列化状态”。 打个比方,如果一个用户有一些敏感信息(譬如密码,银行卡号等),为了安
(地主源代码)求解! 做的不够好,求大神指点
(地主源代码)求解! 做的不够好,求大神指点
java大神给初学者的建议 发展方向
Java学习这一部分其实也算是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是你是如何学习Java的,能不能给点建议?今天我是打算来点干货,因此咱们就不说一些学习方法和技巧了,直接来谈每个阶段要学习的内容甚至是一些书籍。这一部分的内容,同样适用于一些希望转行到Java的同学。   在大家看之前,我要先声明两点。1、由于我本人是Java后端开发出身,因此所推荐的学习内容是Java
安卓fragment问题 初学者求大神指点
11-22 21:24:59.490: E/AndroidRuntime(1427): java.lang.RuntimeException: Unable to start activity ComponentInf{com.example.again3/com.example.again3.MainActivity}: android.view.InflateException: Binary
java版线程读者优先写者优先问题
初学者写的java版线程读者优先写者优先问题,欢迎各位大神指点~~
求大神指点下
集合A,集合B  已经确定A&amp;gt;B  A,B中不可能出现重复   A与B有交集  怎么用代码实现B中值在A中的位置?并将B中不是交集的部分 筛选出来?  例如 A[1,2,3,4,5,6,7,8,9]     B[12,3,8,11,9,13,]    ...
求大神指点!
现在有一个list集合,里面的数据是这样:{消息, 消息, 消息, 消息, 消息, 消息, 消息, 消息, 消息, 消息, 消息, 消息, 评论, 评论, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯, 通讯...
huffman压缩文件
初学者写的,huffman压缩文件。求指点,求喷!
自制串口调试助手
自制串口调试助手,参照网上的代码资源,可以实现基本功能,求各路大神指点
人事资源管理系统
SSH框架+MySQL做的一个人事管理系统,需要的可以借鉴下,不足之处求大神指点