亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

申明了變量一定要賦值嗎?

這個題就是讓你賦值,但不賦值不就為空嗎,也沒有錯啊

正在回答

5 回答

給你舉個例子:

public?class?HelloWorld{
??public?static?void?main(String[]?agrs){
????String?love;??/只是聲明了變量?love?,沒有賦值。
????System.out.println(love);??/此行代碼可以運行出來,但是運行出來的love跟你聲明的不是一個love..
???????????????????????????????/你給括號里面的換成任意一個詞都能運行出來。此時String?love;這行就沒?????????????????????????????????用
??}
}


1 回復 有任何疑惑可以回復我~
#1

慕粉3404826 提問者

非常感謝!
2016-07-13 回復 有任何疑惑可以回復我~
#2

Shuryo_jaha

非常感謝!
2016-09-23 回復 有任何疑惑可以回復我~

實名反對最佳回答,“想要的life”的這一段代碼

public?class?HelloWorld{

??public?static?void?main(String[]?agrs){

????String?love;??/只是聲明了變量?love?,沒有賦值。

????System.out.println(love);??/此行代碼可以運行出來,但是運行出來的love跟你聲明的不是一個love..

???????????????????????????????/你給括號里面的換成任意一個詞都能運行出來。此時String?love;這行就沒?????????????????????????????????用

??}

}

編譯器是無法編譯的,如果你嘗試編譯,則會報錯:

StringTest.java:4: 錯誤: 可能尚未初始化變量love

? ? ? ? System.out.println(love);

? ? ? ? ? ? ? ? ? ? ? ? ? ?^

1 個錯誤

因此,變量可以不賦值,這并不違反java的語法規范,但是變量是一個容器,就是用來存放值或引用對象的,

如果不給變量賦值,就好象買了一個杯子,但是從來也不用它來裝任何東西一樣,就失去它的意義了。

另外,如果你需要輸出一個變量,除了聲明以外,一定要給它賦值,否則將無法輸出。

另外,在main方法中,變量的值如果不主動賦值是不會自動初始化的,例如

String?a;

意思就是聲明1個名字為a的String類型的變量,如果不賦值的話,a變量此時的值為null,也就是空,什么都沒有。

如果你要輸出a,編譯器就會報錯,因為沒有任何東西可以輸出。

因此簡單來回答你的問題,變量可以不賦值,這符合語法規范,但是沒有實際意義。

但是如果你要輸出一個變量的值,就一定要主動賦值。



1 回復 有任何疑惑可以回復我~

想要輸出就要賦值。

0 回復 有任何疑惑可以回復我~

變量聲明了,不一定要賦值,系統會自動初始化一個值,但是在main方法中,變量的值就不會被初始化

0 回復 有任何疑惑可以回復我~

聲明了,不一定要賦值,如果不賦值,系統會自動會賦一個隨機值!

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Java入門第一季(IDEA工具)升級版
  • 參與學習       1167759    人
  • 解答問題       18749    個

0基礎萌新入門第一課,從Java環境搭建、工具使用、基礎語法開始

進入課程

申明了變量一定要賦值嗎?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號