【javase複習】## day1 標識符、常量、變量、運算符 ##

1 標識符和註釋##

好欣慰我基本都記得。。這裏記一下命名規範。
1.包名
多個單詞組成時所有字母小寫(例:package  com.itcast) 
2.類名和接口
多個單詞組成時所有單詞的首字母大寫(例:HelloWorld)
3.變量名和函數名
多個單詞組成時第一個單詞首字母小寫,其他單詞首字母大寫(例:lastAccessTime、getTime)。
4.常量名
多個單詞組成時,字母全部大寫,多個單詞之間使用_分隔(例:INTEGER_CACHE)

註釋分類:
1.單行註釋(line comment)用//表示,編譯器看到//會忽略該行//後的所文本
2.多行註釋(block comment)用//表示,編譯器看到/時會搜索接下來的/,忽略掉//之間的文本。
3.文檔註釋用/* /表示,是java特有的註釋,其中註釋內容可以被JDK提供的工具 javadoc 所解析,生成一套以網頁文件形式體現的該程序的說明文檔。
注意:多行註釋中可以嵌套單行註釋,多行註釋不能嵌套多行註釋。錯誤!!!

文檔註釋 (編寫軟件說明書)
1.需要使用sum給我們提供的javadoc工具生成一個html的說明文檔。
2.只能抽取public的屬性或者方法內容。(類必須public
格式:
Javadoc –d 指定存儲文檔的路徑 -version –author(可選) 目標文件

這裏寫圖片描述

常量和變量

Java中常量的分類:
整數常量 : 所有整數
小數常量 : 所有小數
布爾常量 : 只有true和false
字符常量 :使用’’引起來的單個字符
字符串常量 :使用“”引起來的字符序列,
注意:Integer.tobinaryString()方法可以將int數據轉換爲01字符串
null常量 : 只有一個值null

  1. 整型 這個一定要記得。。。太丟人了總是不記得
    byte 代表一個字節的大小 8bit 2(8) -128~127 256
    short 代表兩個字節的大小 16bit 2(16) -2(15)~2(15)-1
    int 代表四個字節的大小 32bit 2(32) -2(31)~2(31)-1
    long 代表八個字節的大小 64bit 2(64) -2(63)~2(63)-1
    如果一個數值沒有采取特殊的處理,那麼該整數默認的類型是int。
    可以使用數值後面添加L或小寫L改變默認的整數類型。
  2. 浮點型
    float 代表四個字節的大小 32bit
    double 代表八個字節的大小 64bit
    java程序中所有的小數默認的類型是double類型,所以需要使用特殊的符號改變默認的小數類型。
  3. 字符型
    char 代表兩個字節的大小 16bit 2(16)
    原理:將字符映射爲碼錶中對應的十進制數據加以存儲。
  4. 布爾型
    boolean 佔一個字節。只有true與false兩個值。

注意兩個問題:
以前總是不知道爲啥要加f不加d。。。
一個整數默認就是int,如果要
long w =3432423432432, 則後面要加一個L 不然報錯
long w = 3432543543543543**L**

小數默認是double ,如果要用float,則後面要加f
float f =3.14**f**

第二:
byte b=126;
問:既然數據默認的有數據類型,那麼126 默認是int類型的,爲什麼存儲到byte類型時不會報錯呢。
126 是常量java在編譯時期會檢查該常量(每個常量)是否超出byte類型的範圍。如果沒有可以賦值。
byte b=128;能否正常的編譯和運行。
該語句會出現編譯錯誤,128超出了byte變量的存儲範圍,所以出現編譯錯誤。

b =b1+b2 不可以,因爲b1 和b2 是變量,表達式求值時,變量值會自動提升爲int型,表達式結果也就成了int型,這是要賦值給byte型的b,必須進行強制類型轉換了。

總結:
所有數值運算符都可以用在char型數據上,如果另一個操作數是一個數字或者字符,那麼char會自動提升爲int型,如果另一個操作數是字符串,那麼字符就會和字符串相連。

運算符

1、算術運算符

  • : 正數、 相加、 字符串連接 三個功能
    注意: 做字符串連接功能時,每次選取+左右兩邊的元素進行連接,一次次連接
    eg: 1+2+3+”hello”+3+3
    結果 = 3+3+”hello”+3+3
    = 6+”hello”+3+3
    = “6hello”+3+3
    = “6hello3”+3
    = “6hello33”

    % 取餘符號 : 結果的正負取決於被除數的正負

++自增符號: 有一個不清楚的點 :
這裏寫圖片描述

2、 比較運算符:

= <= == != > < Instanceof
注意的細節:
使用比較運算符的時候,要求兩種數據類型必須一致。
byte、short、c har 會自動提升至int。

attention:
==用於兩個基本數據類型 是比較所存儲的值是否相同
用於兩個引用數據類型 是比較所記錄的內存地址是否一致

3、 邏輯運算符

& 與
| 或
! 非
^ 異或
&& 短路與
|| 短路或

之前總是不瞭解&&與&的區別 總覺得&是位運算才用的。其實不然:
單與時,左邊無論真假,右邊都進行運算;雙與時,如果左邊爲真,右邊參與運算,如果左邊爲假,那麼右邊不參與運算。

4、 位運算符

& 與
| 或
~ 取反
^ 異或 一個數異或同一個數兩次,結果還是那個數. 用處一個簡單的加密思想.

經典面試題:
這裏寫圖片描述

5、 移位運算符

 << 左移
 >> 右移
 >>> 無符號右移

 >> 是除以2的移動位數次冪
 << 是乘以2的移動位數次冪

面試題:
這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章