達內day01
1.Java開發環境:
1)編譯執行過程:
1.1)編譯期:.java原始檔,經過編譯,生成.class位元組碼檔案
1.2)執行期:JVM載入.class並執行.class
跨平臺,一次程式設計到處使用
2)JVM:java虛擬機器
載入.class並執行.class
JRE:java執行環境
JRE=JVM+java系統類庫(小零件)
JDK:java開發工具包
JDK=JRE+編譯、執行等命令工具
2.Eclipse:
IBM、開源的、免費的、不需要安裝僅需解壓即可
專案----包----類,main()中:
System.out.println("Hello");
1.變數:存數的,代詞,指代的就是它所存的那個數
1)宣告:
int a; //宣告一個整型的變數,名為a
int b,c,d; //宣告三個整型的變數,名為b,c,d
2)初始化:第一次賦值
int a = 250; //宣告整型變數a並賦值為250
int a; //宣告整型變數a
a = 250; //給變數a賦值為250
a = 360; //修改變數a的值為360
3)使用:
3.1)對變數的操作就是對它所存的那個數的操作
int a = 5;
int b = a+10; //取出a的值5,加10後,再賦值給變數b
System.out.println(b); //輸出變數b的值15
System.out.println("b"); //輸出b,雙引號中的原樣輸出
a = a+10; //取出a的值5,加10後,再賦值給變數a
//在a本身基礎之上增10
System.out.println(a); //15
3.2)變數的操作必須與資料型別匹配
int a = 3.14; //編譯錯誤,資料型別不匹配
3.3)變數在用之前必須宣告並初始化
System.out.println(m); //編譯錯誤,m未宣告
int m;
System.out.println(m); //編譯錯誤,m未初始化
4)命名:
4.1)只能包含字母、數字、_和$符,並且不能以數字開頭
4.2)嚴格區分大小寫
4.3)不能使用關鍵字
4.4)可以中文命名,但不建議
建議"英文的見名知意"、"駝峰命名法"
2.基本資料型別:
1)int:整型,4個位元組,-21個多億到21個多億
1.1)整數直接量預設為int型,但不能超範圍,超範圍則編譯錯誤
1.2)兩個整數相除,結果還是整數,小數位無條件捨棄(不會四捨五入)
1.3)整數運算時若超出範圍,則發生溢位,溢位是需要避免的
2)long:長整型,8個位元組,很大很大很大
2.1)長整型直接量需在數字後加L或l
2.2)運算時若有可能溢位,建議在第1個數字後加L
2.3)System.currentTimeMillis()用於獲取自
1970.1.1零時到此時此刻的毫秒數
3)double:浮點型,8個位元組,很大很大很大
3.1)浮點數直接量預設為double型,表示float需在數字後加f或F
3.2)double與float在運算時,有可能會出現舍入誤差,精確運算場合不能使用
4)boolean:布林型,1個位元組
4.1)只能賦值為true或false
5)char:字元型,2個位元組
5.1)採用Unicode字符集編碼,一個字元對應一個碼
表現的形式是字元char,但本質上是碼int(0到65535之間)
('a'--97 'A'--65 '0'--48)
5.2)字元型直接量需放在單引號中,並且只能有一個
5.3)特殊符號需通過\來轉義
3.基本型別間的轉換:
基本型別從小到大依次為:
byte,short,int,long,float,double
char
1)兩種方式:
1.1)自動型別轉換:小型別到大型別
1.2)強制型別轉換:大型別到小型別
語法:(要轉換成為的資料型別)變數
強轉有可能溢位或丟失精度
2)兩點規則:
2.1)整數直接量可以直接賦值給byte,short,char,
但不能超範圍
2.2)byte,short,char型資料參與運算時,
先一律轉換為int再運算
4.Scanner接收使用者的輸入:
1)在package下:
import java.util.Scanner;
2)在main中:
Scanner scan = new Scanner(System.in);
3)在第2步之下:
System.out.println("請輸入年齡:");
int age = scan.nextInt();
System.out.println("請輸入價格:");
double price = scan.nextDouble();