1.基本資料型別定義直接把值放在棧記憶體空間裡
2.引用資料型別是在棧記憶體空間裡存該資料型別值存放在堆記憶體中的首位址
3、8種基本資料型別
整形 byte
1位元組 short
2位元組 int
4位元組 long
8位元組 l結尾
浮點型 預設為double
float 結尾加f
十進位制數形式: 5.12
512.0f
科學計數法: 5.12e2 == 5.12*10^2
布林型 boolean
true
false
不相同於c語言,不可用零和非零來代替true 和 false
字元型別 char 英文狀態下的單引號括起來的單個字元
斜槓 / 反斜槓\
換行 \n
char型別是可以進行運算的,每個char字元都有乙個對應的unicode值
unicode: a 97
資料型別容量大小排序
byte->short->int->long->float->double
char->int->long->float->double
自動型別轉換(小杯子的水可以裝進大杯子)
強制型別轉換(大杯子裡的水倒進小杯子):溢位,丟失精度
注意:直接給byte型別的變數賦值為乙個合法範圍內的數值,可以通過編譯
直接給float型別的變數賦值乙個合法範圍內的浮點型,不能通過編譯
多種資料型別混合運算時,系統首先自動將所有資料型別轉換成容量最大的那種資料型別,然後進行運算
不相容的型別之間不能轉換
string字串不能直接轉換為基本型別 需要通過包裝類的函式來進行轉換
boolean型別不可轉換為其他的資料型別
byte
short
char 之間不會相互轉換,三者在計算時首先轉換為int型別
4、引用資料型別
class 類
inte***ce 介面
陣列資料值存放在堆記憶體中 引用資料型別名稱在棧記憶體存放堆記憶體中的首位址
5、進製
二進位制 滿二進一 0b
八進位制十進位制
十進位制轉二進位制 除於2取餘
二進位制轉10進製 乘2的冪
15的二進位制為1111轉10進製,由後向前
1*2^3 + 1*2^2 + 1*2^1 + 1*2^0
十六進製制
所有數字在計算機底層都以二進位制形式存在
原始碼反碼:原始碼除最高位不變,其餘位數取反
補碼:反碼加1
計算機以補碼的形式儲存所有的整數
5、算術運算子
% 取模 如果模數為負數,結果不考慮負號
被模數為負數,則先對其絕對值進行取模運算,結果加乙個負號。
整數之間做除法時,結果只保留整數部分而捨棄小數部分
+ 號除了能將字串相加外,還能把非字串轉換為字串
6、比較運算子 結果返回的是boolean型別的值
instanceof 檢查是否是類的物件
7、邏輯運算子
& 與 全真才真,有假則假
| 或 全假才假,有真才真
^ 異或 兩邊表示式不相同 為true否則為false
!非 boolean值取相反
&& 短路與 全真才真,有假則假 【出現false則不進行短路與後面表示式的值】
|| 短路或 全假才假,有真則真【出現true則不進行短路或後面表示式的值】
8、位運算子
<< 左移
int c = 5; // 0000 0101
system.out.println(c << 2); // 5*(2*2) = 20 0001 0100
>> 右移
& 位運算子
1 & 1為1,否則為0
| 運算子
0 | 0 為0,否則為1
^ 運算子
異或 兩邊值不相等為1否則為0
9、三元運算子
條件表示式 ? 表示式2 : 表示式3;
條件表示式的值為boolean型別,true則返回表示式2 否則返回表示式3
更新時間:2023年9月10日
JAVA溫習課堂5
28 static 關鍵字 靜態的 非物件導向的 乙個類的多個物件共享乙個變數,需要用static修飾該變數 因為static修飾的變數為類的所有例項共享,所以static成員不屬於某個類的例項,而屬於整個類 所以在訪問允許的情況下,可以使用 類名.直接訪問靜態成員 成員包括屬性和方法 static...
C 基礎溫習 1 溫習控制台程式(一)
我開始學c 的時候是從控制台程式開始的,現在就溫習一下控制台程式。首先我們新建乙個控制台應用程式,新建的過程我就不細說了,建立成功後我們會看到如下 using system using system.collections.generic using system.linq using system...
課堂亂記1
在曉巨集爺爺的課上自習 帶點蹭課性質 隨便聽了一些亂七八糟的東西,然後亂記下來 機器字長 64位,32位,16位機 計算機alu 算術邏輯單元,cpu裡面用於運算的單元,a 算術運算 l 邏輯計算 一次能處理的位元組數。暫存器 儲存資料的單元。現在計算機由軟體,硬體,韌體 固化的軟體,介於軟硬體之間...