[求助]这段JAVA的程式码有一个地方不懂 麻烦能解说一下吗?[已解决~感恩^^]

Home Home
引用 | 编辑 righer
2005-03-11 05:05
楼主
推文 x0
import javax.swing.JOptionPane;
public class Welcome{
public static void main(String args[])
{
String n1,n2;
int f1,f2,sum=0 ;
n1=JOptionPane.showInputDialog("请输入一个整数");
n2=JOptionPane.showInputDialog("请输入一个整数");
..

访客只能看到部份内容,免费 加入会员



献花 x0
引用 | 编辑 PeterPan
2005-03-11 12:08
1楼
  
在 main() 里面宣告的变数称为「自动变数」,必须设值﹝初始化﹞才能使用,如果只有单纯宣告它,它并不会被分配memory address。

这题例子举的不好,所以你会看不出来,我另外举个小例子:
public class Test{
  public static void main(String[] args){
    int sum;
    sum++;
    System.out.println(sum);
  }
}
以上的source code无法编译成功,会出现error message:variable sum might not have been initialized

所以自动变数一定要在宣告sum之后给它一个值﹝初始化﹞,才能使用,以下两种方式都算是初始化↓
int sum;
sum = 0;
int sum = 0;

你的助教举的例子等同于以下的 source code↓
import javax.swing.JOptionPane;
public class Welcome{
  public static void main(String args[]){
    String n1,n2;
    n1 = JOptionPane.showInputDialog("请输入一个整数");
    n2 = JOptionPane.showInputDialog("请输入一个整数");
    int sum = Integer.parseInt(n1) + Integer.parseInt(n2);
    JOptionPane.showMessageDialog(null,"sum = "+sum,"result",JOptionPane.PLAIN_MESSAGE);
  }
}
所以 sum 等于是宣告就直接初始化﹝初始化的数值等于 user 输入的两个数值相加﹞,也难怪会让你弄糊涂了这个观念。

SCJP蛮喜欢考这个观念,我可以作证,因为我去考的时候就遇到好几题相似的题目,然后问你编译会不会过?

献花 x0
引用 | 编辑 righer
2005-03-11 16:31
2楼
  
恩 感谢大大的解答 原来如此 这样看我就懂了~
因为我们老师教半学期的C 就要我们学JAVA
C还不太懂的说 就要学JAVA...
我还要继续加油~

SCJP这个是什么呀?

献花 x0
引用 | 编辑 PeterPan
2005-03-11 17:08
3楼
  
SCJP 全名是 Sun Certified Java Programmer,简单来说就是SUN的基础程式设计认证。
要取得本项认证的程式设计人员,必须具备的能力包括使用Java 2 Platform、Standard Edition (J2SE),展示其熟悉基础Java程式设计语言。

你的老师也许想让你们每种语言都会一些,再自己挑一个深造吧,加油啰。

献花 x0
引用 | 编辑 mmpo
2005-03-13 22:52
4楼
  
java宣告不指定的话(针对的型别是int)...初使化是会自动给0

不过这个也要看版本跟设定的不同而会有所不同吧...

因为在我的电脑里是这样的情况,不过即然有大大说一定要人工上的初使化...我想大概是和我的电脑上的设定或版本有所不同吧

但针对选写程式的习惯上,最好要有这个动作

sum是f1加上f2的结果......如果你不能包证sum是0的话....那相加的结果也一定会有错误

所以不管是不是会自动初使化成零....好的习惯应该还是一开始初使化指定其为0会比较好

献花 x0
引用 | 编辑 ooxx123
2005-07-09 18:03
5楼
  
请问大大...
Sun Certified Java Programer
SUN是什么意思阿   ~"~a

献花 x0
引用 | 编辑 pbnttttt
2005-07-13 15:02
6楼
  
SUN   就是创造出java这种程式语言的公司
ㄏㄏ 吃水果要拜树头  这是一定要知道的唷

献花 x0