JAVA基礎知識筆記(一)
day01
一 java開發環境
二 eclipse
三 變量
四 基本數據類型
五 基本數據類型的轉換
說明
這是本人寫的第一篇博客,裏面都是自己的一些學習筆記以及查閱資料整理的,老實講,現在心裏有點慌,但還是邁出了這一步,人家的第一次就在這裏了,如果有錯誤與不到位的地方,歡迎大家指點改正,謝謝!
java開發環境
1 java編譯運行過程:
1.1、編譯期:
(1)源代碼:編寫源代碼文件(.Java)
(2)編譯器:用編譯器運行源代碼。編譯器會檢查錯誤,如果發現錯誤,則需要改正才能進行輸出。
(3)輸出:編譯器會產出字節碼(.class)。任何支持Java的裝置都能夠把它轉譯成可執行的內容。編譯後的字節碼與平臺無關。
1.2、運行期:
(1)Java虛擬機(JVM)(通過軟件實現):此虛擬機可以讀取和執行字節碼(.class)。
2 名詞:
2.1、JVM(Java Virtual Machine):java虛擬機
作用:加載並運行.class文件,通過JVM,java實現了跨平臺性,從而可以實現一次編程到處使用
2.2、JRE(Java Runtime Environment):java運行環境
JRE = JDK + java類庫(小零件)
2.3、JDK(Java Develop Kit):java開發工具包
JDK = JRE + 編譯、運行等命令工具
3 eclipse
3.1、相關介紹 :由IBM公司開發,是開源的、免費的且僅需解壓即可使用
3.2、使用步驟:
(1)創建java項目
(2)創建java包
(3)創建java類:System.out.println("Hello World");
3.3/註釋:解釋性文本
(1)單行://
System. out. println ( "Hello World" ) ;
(2)多行:/* */
String a = "Hello World" ;
System. out. println ( a) ;
輸出結果:"Hello World"
(3)文檔:/** */
文檔註釋後面做專門描述
4 變量:
用來存儲數據的,代詞,指代的是它所存儲的那個數據
4.1、聲明:
int a;
int b, c, d;
4.2、初始化:第一次給變量賦值
(1)聲明同時初始化
int a = 250 ;
(2)先聲明,後初始化
int a;
a = 250 ;
4.3、使用:
(1)對變量的使用就是對它所存儲的數據的使用
int a = 5 ;
int b = a + 10 ;
System. out, println ( b) ;
System. out. println ( "b" ) ;
a = a + 10 ;
System. out. println ( a) ;
(2)變量的使用必須與數據類型相匹配
int a = 3.14 ;
(3)變量在使用之前必須聲明並初始化
System. out. println ( m) ;
int m;
System. out. println ( m) ;
4.4、命名:
(1)只能包含字母、數字、_和$符,並且不能以數字開頭
(2)嚴格區分大小寫
(3)不能使用關鍵字
(4)可以中文命名,但不建議
建議“英文的見名知意”、“駝峯命名法”
駝峯命名法:當變量名或函數名是由一個或多個單詞連結在一起,而構成的唯一識別字時,第一個單詞以小寫字母開始;從第二個單詞開始以後的每個單詞的首字母都採用大寫字母,例如:myLastName。
score,myScore,myJavaScore------------駝峯命名法
Score,MyScore,MyJavaScore------------帕斯卡命名法
5 基本數據類型
java中有8種數據類型,分別爲:byte,short,int,long,float,double,char,boolean,但是常用只有int,long,double,char,boolean五種。
5.1、int整型,4個字節,範圍爲:-2147483648到2147483647
(1)整數直接量默認爲int,但不能超出範圍,若超出範圍則編譯錯誤
直接量超出範圍爲編譯錯誤,運算時超出範圍 爲溢出
int a = 10000000000 ;
int b = 1000000000 * 10 ;
int balance = 2147483647 ;
balance = balance + 1 ;
System. out. println ( balance) ;
(2)兩個整數相除,結果還是整數,小數位無條件捨棄(不會四捨五入)
int a = 5 ;
int b = 10 ;
int c = 15 ;
System. out. println ( b/ a) ;
System. out. println ( c/ b) ;
(3)整數運算時若超範圍則發生溢出,溢出是需要避免的
5.2、long 長整型,8個字節(32位),很大很大很大
(1)長整型的直接量需在數字後加L或l
(2)運算時若有可能溢出,建議在第一個數字後加L
(3)System.currentTimeMillis()用於獲取自1970.1.1零時到此時此刻的毫秒數
long a = 1000000000 * 2 * 10 L;
System. out. println ( a) ;
long b = 1000000000 * 3 * 10 L;
System. out. println ( b) ;
long b = 1000000000 L* 3 * 10 ;
System. out. println ( b) ;
5.3、double:浮點型,8個字節,很大很大
(1)浮點型直接量默認爲double,表示float需在數字後加F或f
(2)double與float型數據在參與運算時,有可能會出現舍入誤差
double a = 3.0 , b = 2.9 ;
System. out. println ( a- b) ;
double a = 6.0 , b = 4.9 ;
System. out. println ( b- a) ;
5.4、boolean:布爾型,1個字節
只能賦值爲true或false
5,5、char:字符型,2個字節
(1)採用Unicode字符集編碼,每個字符都有一個對應的碼, 表現的形式是字符char,但本質上是整數int(0到65535),(ASCII碼: 'a'--97 'A'--65 '0'--48);
(2)字符直接量需放在單引號中,只能有一個
(3)特殊字符需要\來轉義
char ch = '\\' ;
System. out. println ( ch) ;
char ch = 'd' ;
System. out. println ( ch) ;
char ch = 'a' ;
System. out. println ( ch) ;
char ch = 97 ;
System. out. println ( ch) ;
6 數據類型間的轉換
6.1、兩種方式:
(1)自動類型轉換:小類型到大類型
(2)強制類型轉換:大類型到小類型(要轉換成爲的數據類型)變量強轉有可能溢出或丟失精度
6.2、兩點規則
(1)整數直接量可以直接賦值給byte,short,char,但不能超出範圍
(2)byte,short,char型數據參與運算時, 先一律轉換爲int再運算
byte b1 = 5 ;
byte b2 = 6 ;
byte b3 = ( byte ) ( b1+ b2) ;
7 Scanner的用法
這裏簡單提及一下,後面會做詳細的贅述。
7.1、在package下:
import java. util. Scanner;
7.2、在main中:
Scanner scan = new Scanner ( System. in) ;
7.3、在第2步之下:
System. out. println ( "請輸入年齡:" ) ;
int age = scan. nextInt ( ) ;
System. out. println ( "請輸入價格:" ) ;
double price = scan. nextDouble ( ) ;