已解決幫我看看我的程序錯在了哪裏?(Java)
提問者:lala乖 | 瀏覽次 | 提問時間:2017-01-10 | 回答數量:7
我剛看到局部變量和成員變量這塊 自己編了個程序調試了一下,運行後機器說有錯誤,我找了半天也不覺得哪裏錯了啊! 麻煩各位大蝦了!這是我編的程序:public class TestVar {static int j;public void m{int i=0;System.out.println(i);}public static void main(String args[ ]){int i=1;System.out.println(i);System.out.println(j);}boolean b=false;if(b){System.out.println(b is true);}long longNum1=8888888;}我有幾個錯誤?錯在哪裏?
已有7條答案
這樣寫就沒錯了
但是不知道你要測試什麼
寫的好亂亂亂 是非常的亂!
public class TestVar {
static int j;
public void m ()
{
int i=0;
System.out.println(i);
}
public static void main(String args[ ])
{
int i=1;
System.out.println(i);
System.out.println(j);
boolean b=false;
if(b)
{
System.out.println("b is true");
}
long longNum1=8888888;
}
}
public void m
{
int i=0;
System.out.println(i);
}
這是什麼東西啊? 抄錯了吧
public void m ( )
{
int i=0;
System.out.println(i);
}
想表示一個方法函數名為m ,少寫了一個括號!
但是按照java編程規範 不應該使用單個字符表示函數名!!
偶就是金剛力士
回答數:131 | 被采納數:20
neo_pang 你好牛逼啊! 按照你寫的就運行出來了!
這是你修改的程序
public class TestVar {
static int j;
public void m ()
{
int i=0;
System.out.println(i);
}
public static void main(String args[ ])
{
int i=1;
System.out.println(i);
System.out.println(j);
boolean b=false;
if(b)
{
System.out.println("b is true");
}
long longNum1=8888888;
}
}
運行結果是:1
0
但是我還有個問題:這個程序裏麵有四個輸出語句,分別是第6行,第11行第12行 和第 17行的四個輸出語句,但為什麼最後的運行結果隻執行第11行和第12行的輸出語句?而不執行第6行和第17行的?
另外,這個語句中:
if(b)
{
System.out.println("b is true");
}
是不是隻有當b是true時才執行大括號裏麵的語句?
if(b)
{
System.out.println("b is true");
}
是的 就是當b為真時 才會有輸出!!
至於第一個輸出語句是在方法函數m裏的!
而main函數中沒有調用次方法!!!
所以就不輸出了!
認識的陌生人go
回答數:18 | 被采納數:139
neo_pang 你是我的偶像 非常感謝你的解答 辛苦了 謝謝你的時間!
你要這樣去寫就對了!!
public class TestVar {
static int j;
private void displaySomething() {
int i = 0;
boolean flag = false;
System.out.println("other i = " +i);
if(!flag) {
System.out.println("b is true");
}
}
public static void main(String args[]) {
TestVar testVar = new TestVar();
int i = 1;
System.out.println("i = " +i);
System.out.println("j = " +j);
testVar.displaySomething();
long longNum = 8888888;
System.out.println("longNum = " +longNum);
}
}