1. 程式人生 > >1.Java基礎之識別符號命名法、八大基本資料型別三大引用型別、運算子以及程式分支結構、方法的定義過載遞迴

1.Java基礎之識別符號命名法、八大基本資料型別三大引用型別、運算子以及程式分支結構、方法的定義過載遞迴

一、基礎匯入:

1.java採用Unicode編碼,16進位制編碼,支援世界上所有語言(GBK,gb2312,Unicode,UTF-8,ISO-8859-1)。

多執行緒---> c-編譯型語言

Test.java--原始檔,原始檔必須與主類名(public class Test)保持一致。

  • 一個原始檔只有一個主類。
  • 主方法存在於主類中。

 

2.java程式編譯-執行流程:

編譯:javac Test.java -> Test.class (若程式中出現中文,編譯時加上-encoding UTF-8)

執行:java Test

  • 命令列向主方法傳參:java Test 引數1 引數2 ……

 

3.

  • JDK:JDK開發程式包,包含JRE,多了編譯器javac以及除錯工具JConsole、jstack,針對java程式設計師。
  • JRE:是執行java程式的環境,包含JVM以及java核心類庫,針對使用java程式的使用者。
  • JVM:java虛擬機器(java移植性的關鍵)

 

二、java資料型別與運算子

1.java註釋

  • ①單行註釋://
  • ②多行註釋:/* */
  • ③文件註釋:/* * */

2.java識別符號

駝峰命名法:

①小駝峰:用於方法名、普通變數名稱

  • 若識別符號室友單個單片語成,則全小寫:int age = 5;
  • 若識別符號是由多個單片語成,除了第一個單詞全小寫外,第二個單詞以及之後的單詞首字母大寫:int myAge = 10;

②大駝峰:用於類命名

類名是以大寫字母開頭的單詞。

  • 若類名由多個單片語成,則每個單詞首字母大寫。

如:

class Test{
    ...
}
class MyTest{
    ...
}

③常量:單詞全大寫,多個單詞間以_間隔

如:

final int MY_AGE = 10;

 

3.java資料型別劃分:

(1)八大基本資料型別:資料型別預設值需要結合類來觀察,主方法變數必須先賦值再使用,不存在預設值。

①數值型

Ⅰ.整型(預設值為0):

byte(-128---127)-->1位元組、short、int(-2^31---2^31)-->4位元組、long(-2^63---2^63)

注意:

  • 在java中,任何一個整型變數均為int型別!!
  • 整型常量如果要宣告為long型別,需要在數字後加上l或L(推薦)
  • 型別提升:小的資料型別與大的資料型別進行數值運算時,小的資料型別會自動提升為大的資料型別。eg:10+1L;
  • 大的資料型別轉為小的資料型別,必須強轉。但是強轉可能會丟失資料

 

byte與int之間的關係:

  • 整型常量在byte型別的儲存範圍內,可以直接賦值給byte變數,無需強轉;
  • 整型常量值超出byte範圍,必須強轉;
  • 整型變數無論值是否在byte範圍內,都要強轉。

 

Ⅱ.浮點型(預設值為0.0):float、double

注意:

  • 小數常量預設是double型別。
  • 要定義float型別的常量,在小數後加 f/F。eg:float age = 1.1f;

 

小結:描述整型用int、小數用double,long一般用於描述日期、時間、記憶體、檔案大小,IO處理用byte。

 

②字元型:用' '表示。

Ⅰ.char與int可以相互轉換。

  • char轉int直接賦值,int轉char需要強轉。
  • 字元型數字與整型數字絕對不相等。
  • char一般用於描述中文(基本忽略),預設值為\u0000。

Ⅱ.String類初步認識:用" "表示。

  • 只要出現字串,其他任何型別與字串“+”,都會先轉為字串再進行字串的拼接操作。

 

小結:描述單個字元用char、多個字元用String類。

 

③布林型:boolean(預設值為false)。

 

(2)三大引用型別陣列、類、介面(預設值為null)

 

4、運算子

(1)自增自減運算子 ++ 、-- ,如a++、++a;a--、--a。

(2)三目運算子(*****):

布林表示式?數值1:數值2;

如:'哈'>10; //true,字元型與整型數字可以直接比較。

(3)比較運算子:> 、 <、>=、<=

(4)邏輯運算子:

邏輯或:|、||

在if語句中使用 | 時,表示多個條件都要判斷,即便有表示式返回true,剩餘條件還要繼續判斷。使用 || (短路非) 時,只要有條件返回true,剩餘條件不再判斷。

邏輯與:&、&&

注意:java邏輯運算就使用短路與、短路非。

(5)位運算子:&、|、^、~、>>(除2)、<<(乘2)

 

5、java程式結構

(1)分支結構

if...else if...else if..

switch(數字|列舉|字元|字串)

不帶break的case語句會將滿足條件的分支統統走一遍。

for(1初始化條件;2迴圈結束判斷;3修改迴圈條件){

           //4迴圈體程式碼

    } //執行順序為1、2、4、3

迴圈控制條件:

  • continue:跳出本次迴圈直接進入下一次迴圈。
  • break:跳出整個迴圈。

(2)方法的定義:直接在主方法中呼叫的方法

public static 方法返回值 方法名([引數型別 變數...]){

方法體程式碼;

...

[return 返回值;]

 }

 

注:void關鍵字宣告的方法沒有返回值,可以用return;結束函式的呼叫

 

(3)方法的過載(********)

定義:方法名稱相同,引數的個數、型別、順序不同,與方法返回值無關!

編碼規範:過載函式的返回值型別一定保持相同!

 

(4)方法的遞迴