javaSE第二章筆記

weixin_44702189發表於2020-10-14

IDE的使用

(IntegratedDevelopment Environment )整合開發環境

用於提供程式開發環境的應用程式

包括程式碼編輯器,編譯器,偵錯程式和除錯圖形介面

註釋

單行註釋 // Ctrl+/

多行註釋 /* */ Ctrl+Shift+/

文件註釋 /**

​ * 用於類、方法、屬性功能進行說明,呼叫時可以提供其功能介紹

​ */

關鍵字

被java語言賦予特定含義的單詞,用來修飾例如類;屬性;方法(所有字母都為小寫)

保留字

在java語言中未被使用的關鍵字,預留的,命名時要避免 goto const

識別符號

java對各種變數、類、方法等命名時使用的字元序列

通俗講:自己可以命名的名稱

定義合法識別符號規則

由26個英文字母大小寫,0—9,_或$組成

數字不可以開頭

不可以使用關鍵字和保留字,但能包含

java中嚴格區分大小寫,長度無限制

識別符號不能包含空格

變數

變數:程式中最基本的儲存單元,程式中數值可變的

​ 每一個變數使用前必須先申請(宣告),然後必須進行賦值(填充內容),才能使用

​ 本質上變數就是記憶體中的一塊區域,通過變數名訪問

語法:[修飾符] type varname [=value] [,varName[=value]·····]

Java資料型別

程式中對於每一種資料都定義了明確的具體資料型別,在記憶體中分配了不同大小的記憶體空間

java語言是一種強資料型別語言,每個資料必須指定型別,指導JVM分配記憶體空間

資料型別

基本型別

整數型別(byte,short,int,long)、浮點型別(float,double)、布林型別(boolean)、字元型(char)

引用型別

類(class)、介面(interface)、陣列([])

Java基本資料型別

整數型別

型別佔用儲存空間表數範圍
byte1位元組-128~127
short2位元組-215~215-1
int4位元組-231~231-1
long8位元組-263~263-1

浮點型別

型別佔用儲存空間表數範圍
float4位元組-3.403E38~3.403E38
double8位元組-1.798E308~1.798E308

Java浮點型別常量預設為double型

邏輯型boolean(布林)

boolean型別資料只允許取值true或false

注意:不可以0或非0的整數替代true和false

char字元型

char型資料用來表示通常意義上的字元,char佔2位元組,字元用單引號括起來的單個字元

例如:char c1=‘a’ char c2=‘中’

char運算

​ char型別可以運算是因為char在字元編碼表中有對應數在Java中,對char型別字元執行時,直接當作對應編碼表的整數來對待

基本資料型別轉換

Java中可以從任意基本型別轉型到另外的基本型別

有多種型別的資料混合運算時,系統首先自動的將所有資料轉換成容量最大的那一種資料型別,然後再進行計算

​ 例外:boolean型別不可以轉換

預設轉換

容量小的型別預設轉換為容量大的資料型別

byte,short,char->int->long->float->double

byte,short,char之間不會互相轉換,他們三者在計算時首先會轉換為int型別

強制轉換

容量大的資料型別轉換為容量小的資料型別時,要加上強制轉換符,但可能造成精度降低或溢位;使用時要格外注意

ASCLL碼

在計算機內部,所有資料都使用二進位制表示。每一個二進位制位(bit)有 0 和 1 兩種狀態,因此8個二進位制位就可以組合出256 狀態,這被稱為一個位元組(byte)

一個位元組一共可以用來表示256種不同的狀態,每一個狀態對應一個符號,就是256個符號,從0000000到11111111

缺點:不能表示所有字元

Unicode編碼

​ 一種編碼,將世界上所有的符號都納入其中。每一個符號都給予一個獨一無二的編碼,使用Unicode沒有亂碼的問題

​ Java採用unicode編碼規範,其中完全包含ASCII編碼

​ UTF-8(8位元Unicode Transformation Format)是針對Unicode的一種可變長度字元編碼,它可以使用1-6個位元組表示一個符號,根據不同的符號而變化位元組長度,在utf-8編碼表中,一箇中文佔3個位元組,一個英文佔1個位元組

​ 它可以用來表示Unicode標準中的任何字元,而且其編碼中的第一個位元組仍與ASCII相容,使得原來處理ASCII字元的軟體無須或只進行少部份修改後,便可繼續使用。因此,它逐漸成為電子郵件、網頁及其他儲存或傳送文字的應用中,優先採用的編碼

運算子

算術運算子

運算子運算範例結果
+正號+33
-負號b=4;-b-4
+5+5
-6-24
*3*39
/5/51
%取餘7%52
++自增(前):先運算後取值a=2;b=++a;a=3;b=3
++自增(後):先取值後運算a=2;b=a++;a=3;b=2
- -自減(前):先運算後取值a=2;b=–aa=1;b=1
- -自減(後):先取值後運算a=2;b=a–a=1;b=2
+字串相加“He”+”llo”“Hello”

比較運算子

運算子運算範例結果
==相等於4==3false
!=不等於4!=3true
<小於4<3false
>大於4>3true
<=小於等於4<=3false
>=大於等於4>=3true

instanceof: 檢查是否是類的物件 “Hello” instanceof String true

比較運算子的結果都是boolean型,也就是要麼是true,要麼是false。

邏輯運算子

邏輯與邏輯或邏輯非短路與短路或邏輯異或
&|&&||^
aba&ba|b!aa^ba&&ba||b
truetruetruetruefalsefalsetruetrue
truefalsefalsetruefalsetruefalsetrue
falsetruefasletruetruetruefalsetrue
falsefalsefalsefalsetruefalsefalsefalse
&與&&的區別

單&時,左邊無論真假,右邊都進行運算;

雙&時,如果左邊為真,右邊參與運算,如果左邊為假,那麼右邊不參與運算

“|”和“||”的區別

同理,||表示:當左邊為真,右邊不參與運算

異或

異或( ^ ):當左右都為true時,結果為false

賦值運算子

運算子用法舉例等效的表示式
+=a+=ba=a+b
-=a-=ba=a-b
*=a*=ba=a*b
/=a/=ba=a/b
%=a%=ba=a%b

條件運算子

語法: (條件表示式)?表示式1:表示式2;

​ 條件表達結果 為true 運算結果是表示式1

​ 為false 運算結果為表示式2

​ 表示式1與表示式2為同種型別

條件運算子與if-else的聯絡與區別

1)條件運算子可簡化if-else

2)條件運算子必須返回一個結果

3)if後的程式碼塊可有多個語句

位運算

位運算子
<<空位補0,被移除的高位丟棄,空缺位補0
>>被移位的二進位制最高位是0,右移後,空缺位補0;最高位是1,空缺位補1
>>>被移位二進位制最高位無論是0或者是1,空缺位都用0補
&二進位制位進行&運算,只有1&1時結果是1,否則是0
|二進位制位進行|運算,只有0|0時結果是0,否則是1
^相同二進位制位進行^ 運算,結果是0;1^1=0, 00=0,不相同二進位制位 運算結果是1。1^0=1, 0^1=1
~正數取反,各二進位制碼按補碼各位取反,負數取反,各二進位制碼按補碼各位取反

相關文章