20190301 java資料型別劃分(阿里雲大學)
1. 若要開啟的.class檔案在D:\mydemo,但是命令列此時指向E:\,則應該在命令列中做E:\SET CLASSPATH=d:\mydemo指令操作,再做E:>java hello
得出結論,當時用java命令時,先從CLASSPATH中取得.class檔案的位置,再進行類的載入操作。
CLASSPATH是一個很重要的屬性,在複雜的工程中經常用到,需要著重考慮。
2. 程式註釋
例如
3. 標誌符和關鍵字
java中基本用不到的關鍵字:goto、const
java中特殊含義的單詞:null、true、false
4. java資料型別劃分
在java中資料型別一共分為兩大類:
1.基本資料型別:
數值型:表示整數或小數;
整型:byte、short、int、long ———— 預設值0
浮點型:float、double ———— 預設值0.0
字元型:char; ———— 預設值‘\u0000’
布林型:boolean ———— 預設值fulse
**2.引用資料型別:陣列、類、介面; ———— 預設值null**
個人建議:
表示整型都用int,小數用double
long一般描述日期時間、記憶體或檔案大小(位元組);
byte一般用在需要編碼轉換或進行二進位制轉換的地方
char一般在描述中文使用(基本都會忽略)
boolean在描述程式邏輯時使用。
5. 資料溢位
但資料超出資料型別的極限,資料會出現偏差,例如
若某資料型別最小值為-7,-7的二進位制為1111,負數在系統中以補碼形式儲存,即為1001。當執行-7-1計算時,正確值為-8,但在java中得到結果為8。原因為計算機中,1001-1=1000,取原碼(取反加一,補碼的原碼為補碼的補碼)為10000=8(十進位制)。
任何的整數其預設型別都是int,當資料超過極限時,需要將該數表示為long型,作如下運算元據強制轉換
第一種
long num = 2147483648L;
第二種
int num = 10;
byte data = (byte)num;
沒事幹不做資料強制轉換。
除法計算注意用float或double型。
6. 字元型
大小寫之間差32.。java使用Unicode編碼,而不使用ASCII碼,但具有ASCII碼的部分內容。Unicode碼可以儲存任何文字資訊,包括中文。
範例:儲存中文字元:
神奇的java:
7. 布林型
一般布林型表示邏輯結果。
java中沒有0(錯)、1(對)的概念,只能使用true、false。
8. 初見字串
char可以描述的那個字元,string來描述一串字元。
但string不是基本資料型別,是一個引用資料型別。但是可以按照基本使用模式進行套用。兩個string之間可以使用“+”,表示連線,而非加法。
當“+”在數學計算和連線兩個功能間混淆時:
所有資料型別,只要與string型別的變數做“+”操作,則所有型別都變為string。這時若仍需得到正確的計算結果,則需要用“()”解決問題。
9. 基礎數學運算子
10. 三目運算
11. 關係運算子
返回結果都是boolean型別。
12. 邏輯運算
!、&、 |、&&、||
其中,Java中&&和&都是表示與的邏輯運算子,都表示邏輯運輸符and,當兩邊的表示式都為true的時候,整個運算結果才為true,否則為false。
&&的短路功能,當第一個表示式的值為false的時候,則不再計算第二個表示式;&則兩個表示式都執行。
&可以用作位運算子,當&兩邊的表示式不是Boolean型別的時候,&表示按位操作。
&&第一個表示式為false
int i = 0;
if(i == 3 && ++i > 0 )
{
}
System.out.println("i = " + i);
console:i = 0 ==>第二個表示式沒有執行
&第一個表示式為false
int i = 0;
if(i == 3 & ++i > 0 )
{
}
System.out.println("i = " + i);
console:i = 1 ==>第二個表示式執行了
另有“||”: 如果左邊計算後的運算元為true,右邊則不再執行,返回true;
“|”:前後兩個運算元都會進行計算。也就是說:“|”不存在短路。
13.位運算
&、|、<<、>>
14.程式三種形式:順序結構、分支結構、迴圈結構
分支結構:
if。。。。else
switch+case+break
迴圈結構:
while(){
};
和
do{
}while();
和for迴圈
15.迴圈控制
continue:遇執行此語句之後迴圈體後面的程式碼不執行,直接跳到下一次迴圈
break。
16.方法
指的是被重複呼叫的程式碼塊。定義形式:
無引數無返回值定義
有引數無返回值
有引數有返回值
當void,即無返回值時,return的用法
17.方法過載
方法名稱相同,引數的型別或個數不同。
範例:實現方法過載,將根據引數的型別和個數的不同執行不同的方法體
在進行方法過載時,要求返回值型別一定要相同。
上圖證明System.out.printfln是一個被過載的方法
18.方法的遞迴呼叫
範例:求1~100累加
範例:60!
使用遞迴主要是一個方法可以執行的操作很多,而且結構要好。遞迴是資料結構的第一步。
題外話:
1.我想的永遠比我做的那個要好,所以沒有什麼成就感。
VS
你遠比你想的更強大。
相關文章
- 碎片化學習Java(四)-- Java資料型別Java資料型別
- Java資料型別Java資料型別
- JAVA中基本資料型別和引用資料型別Java資料型別
- Oracle資料型別對應Java型別Oracle資料型別Java
- Java資料型別及型別轉換Java資料型別
- WAF的幾種劃分方法和劃分型別型別
- Java基本資料型別Java資料型別
- Java Grammer:資料型別Java資料型別
- Java 基本資料型別Java資料型別
- 資料庫型別區分資料庫型別
- Java中的基本資料型別與引用資料型別Java資料型別
- Java學習筆記8-資料型別Java筆記資料型別
- 代理IP的型別如何劃分?型別
- Java中的資料型別Java資料型別
- 【Java】資料型別轉換Java資料型別
- Java的基本資料型別Java資料型別
- java資料型別基礎Java資料型別
- java Atomic 基本資料型別Java資料型別
- 3.Java資料型別Java資料型別
- Java資料型別、識別符號Java資料型別符號
- 八大資料型別大資料資料型別
- Java 資料型別和 MySql 資料型別對應一覽表JavaMySQL 資料型別
- C語言資料型別大學霸IT達人C語言資料型別
- Python學習系列之七大資料型別Python大資料資料型別
- 資料劃分
- Java資料型別與資料庫欄位型別對應關係Java資料型別資料庫
- Java 支援的資料型別與 MySQL 支援的資料型別對比Java資料型別MySql
- java基本資料型別佔位Java資料型別
- Java備忘錄《資料型別》Java資料型別
- 2、java資料型別轉換Java資料型別
- Java整型資料型別(詳解)Java資料型別
- java資料型別擴充套件Java資料型別套件
- [java基礎]之資料型別Java資料型別
- Java有哪些基本資料型別?Java資料型別
- python自學——資料型別Python資料型別
- Java技術分享:Java基本資料型別Java資料型別
- 自學java筆記I 基本型別+轉義字元+資料型別的轉換Java筆記字元資料型別
- 八大基本資料型別資料型別