Java學習第一階段
Java筆記
02
Java學習第二天:資料型別和運算子
今日目標:
1.變數
2.資料型別
3.簡單的人機互動(Scanner的使用)
4.運算子:
賦值運算子
算術運算子
關係運算子
邏輯運算子
條件運算子
5.運算子的優先順序
1.變數:
1.什麼是變數:可以變化的量
2.你心中如何理解變數:一個用於裝資料的容器。
思考:
A.計算機如何儲存資料呢?
記憶體條,機械硬碟
B.硬碟和記憶體如何分工?
編輯的文件在沒有儲存時,臨時儲存在記憶體中,儲存後,永久儲存在硬碟上。
3.記憶體和硬碟又是如何儲存資料的呢?
二進位制檔案的形式儲存。
簡述二進位制 010 2 0 10110100 01011010 01011010 01011010
計算機中最小的二進位制位數是8位
1byte(位元組)=8bit(8位二進位制)
1KB=1024byte
1MB=1024KB
1GB=1024MB
1TB=1024GB
4.命名口訣:字 下 美 人 數 駱駝
取名要有意義
不能使用關鍵字
2.資料型別:
public class Hello1 {
public static void main(String[] args) {
//1.宣告一個變數並賦值:變數型別 變數名=變數值;
int a1=12;
//2.拆開:宣告和賦值
int a2;
a2=15;
//3.同時宣告多個變數
int a3,a4,a5;
//4.宣告多個變數的同時賦值
int b1=10,b2=2,b3=2;
// 變數如果沒有賦值,它有值嗎?沒有值
//System.out.println(a3);(程式會顯錯誤)
}
}
基本資料型別4類8種:
1.整數(4種):
Byte: 位元組型 ,1個位元組 -128~127
Short:短整型,2個位元組 範圍:
Int : 整型(預設),4個位元組 範圍:正負21億左右
long :長整型,8個位元組 63 31 -21億 21億2~21億 21億2
2.浮點數(小數2種):
float :單精度 :4個位元組 1符號位 8指數位 23
Double:雙精度:8個位元組
採用科學計數法
3字元型:
char: 2個位元組 a d f ab 3 4 你
4.布林型
boolean :true false
引用資料型別:String 陣列 類 介面
3.資料型別轉換
1.自動型別轉換條件:
型別相容:整數型和整數型 非整數型和非整數型 整數型和非整數型
目標型別大於源型別:小的向大的轉換
2.強制型別轉換:目標型別小於源型別
案例:張三餘額寶有100元,過了一天,收益0.1元,問:現在餘額寶有多少?
用二進位制解釋int到byte的強制型別轉換
轉換規律:
1.數值型別之間轉換:
小到大,正常轉換
大到小,強制轉換
2.整數 和char之間的轉換
public class Hello3 {
public static void main(String[] args) {
//大到小,強制型別轉換
short s=12,s1=12;
int i=13,i1=13;
s= (short) i;
i1=s1;
System.out.println("s="+s+" "+"i1="+i1);
byte b=1,b1=1;
long l=2,l1=2;
l=b;
b1= (byte) l1;
//不同型別 正常型別
//1.int(4) -floor(4)
int a1=12;
float f1=12.1f;
// a1= (int) f1;
f1=a1;
//2.int 4 double 8 byte -float
//不同型別 2 --非正常型
//int char
int a=97;
char c='a';
a=c;
System.out.println(a);
c= (char) a;
System.out.println(c);
System.out.println(a);
c=98;
System.out.println(c);
System.out.println((char)70);
}
}
4.變數使用案例:
1.變數的定義格式: 資料型別 變數名=變數值;
如: int a=88;含義是:將88這個數值賦給a這個整型變數。通俗來說,變數是一個容器,在記憶體中會開闢一個小空間用來儲存資料。
打個比方:有一個房間,房間號是a,房間裡面住的客人是c
Char a=’c’.
2.輸出張三的姓名,年齡,部門,地址,等相關資訊。
現公司出現人員變動,將張三換成李四,出現程式碼改動量大的問題。變數幫我們解決。
public class Hello4 {
public static void main(String[] args) {
//輸出張三的姓名,年齡,部門,地址,等相關資訊。
//現公司出現人員變動,將張三換成李四,出現程式碼改動量大的問題。變數幫我們解決。
//String helloString = new String(helloArray);
String name1="張三";
String age="20";
String bumen="行政部";
String dizhi="湖北";
System.out.println("姓名:"+name1+"\n年齡:"+age+"\n部門:"+bumen+"\n地址:"+dizhi);
name1="李四";
System.out.println("姓名:"+name1+"\n年齡:"+age+"\n部門:"+bumen+"\n地址:"+dizhi);
}
}
5.程式如何同使用者互動:(Scanner)
1.思考:打遊戲時,控制英雄的運動和技能是如何實現的?
在鍵盤上輸入的上下左右,遊戲程式如何知道?
2.分析:程式中必然有一個裝置來接收鍵盤按鍵的值。
3.Scanner的使用
分析,記事本上打字的過程:系統接收鍵盤上的按鍵對應的字母,然後傳入到搜狗輸入法,合成相應的文字,然後在電腦螢幕上顯示。
4.思考:java程式如何接收鍵盤輸入的內容呢?
Jdk中封裝了一個類Scanner,該類的職責就是接收鍵盤的輸入值,並儲存到程式的變數中,體現了程式和使用者的互動功能。
使用步驟:案例演示(String,int,double,boolean輸入)
1.導包(別人寫的類,作為當前類的引用)
2.建立物件(是否需要建立物件,取決於呼叫的方法是否為static靜態的)
3.物件呼叫方法來接收輸入值
6.賦值運算子:
1.賦值:往變數對應的記憶體空間裡面塞一個值。
2.書寫格式: int a = 8; 往往在定義一個變數的時候會為其賦值。
3.賦值特點:新值會覆蓋原來的舊值
第一次給變數賦值稱為“初始化”。
4.案例:
如何藉助賦值運算子實現兩個數的交換。
7.算術運算子:
1.基本算術運算:+ - * / % ++i i—
重點:++ – 在變數的前面還是後面
2.複合算術運算:+= -= *= /= %=
3.案例:
使用者輸入自己的會員卡號(3位數),程式取出會員卡號的各個位數,並列印結果。
8.關係運算子
== != < > >= <=
關係運算子的結果是布林值
1<i<3 i<3&&i>1
9.邏輯運算子:
參與邏輯運算子的表示式必須是布林型別
邏輯與 & 邏輯或 |
短路與 && 短路或 ||
如何理解短路:電路圖中的短路是:電流繞過某段電器,從導線走。
1.&&運算中,第一個條件為false,整個語句結果必然為false,所以程式忽略第二個條件, 此為短路與
2.||運算中,第一個條件為true,整個語句結果必然為true,所以程式忽略第二個條件, 此為短路或
3.優先順序:! > && > ||
10.條件運算子
1.書寫格式:
也稱三元(三目)運算子
2.使用場景:當一個變數的取值有兩種可能時,用條件運算子來為變數賦值。
3.案例:使用者輸入考試成績,判斷是否及格,並列印結果。
4.課堂小案例:輸入自己的遊戲得分,大於100是王者,否則是青銅,並列印結果。
11.運算子的優先順序
12.補充:位運算子 & |
案例:6&3 =2 6|3=7 轉換成二進位制 110 和011 每個位上0代表假,1代表真
110
011 &
01 0
作業:
1.小明在銀行存了100元,年利率是5%,存了三年,用程式算出並列印三年後的存款是多 少?
2.使用者依次根據程式的提示,輸入自己的姓名,年齡,餘額寶金額。利用不同資料型別的 變數一次性列印以上資訊。
3.使用變數儲存資料,實現個人簡歷資訊的輸出
效果圖:
4、接受使用者輸入的兩個數,分別求這兩個數的和,差,積,商,模
5、根據天數(由使用者輸入)計算這些天數中有幾周和剩餘的天數,例如:使用者輸入的是45
,輸出結果為:45天是6周餘3天
6、商場為員工提供了基本工資(3000元)、物價津貼及房租津貼,其中物價津貼為基本工資的40%,房租津貼為基本工資的25%。程式設計計算實領工資
編寫程式,定義變數分別存放一本圖書的資訊,圖書的資訊包括:書名(bookName)、作者(bookAuthor)、單價(bookPrice)、庫存量(bookStock)、是否為熱售圖書(isHot),要求圖書的資訊由使用者輸入
1.計算結果x+a%3*(int)(x+y)%2/4 a=7(int) x=2.5 y=4.7(double)
2.計算結果(float)(a+b)/2+(int)x%(int)y a=2 b=3 x=3.5 y=2.5
3.使用條件運算子實現求兩個數中的較大值並將最大值輸出,這兩個數是由使用者從控制檯輸入的
4.讓使用者輸入矩形的兩個邊長(int資料型別),用條件表示式判斷:如果兩個邊長相等,則為正方形,不等為長方形,最後並將其面積輸出。
例如:使用者輸入的長和寬是:4和5,則輸出結果是:該圖形是長方形,面積是20
5.用JAVA程式碼實現一個數字加密器,加密規則是:加密結果 = (整數*10+5)/2 + 3.14159加密結果仍為一整數,其中用到的引數整數是由使用者輸入的,例如:使用者輸入的是:5,則加密後輸出的結果是:30(注意:加密後的結果一定是整數,資料型別轉換)
6、輸入一個數,判斷該數是不是3的倍數,並將結果輸出
7、題目:輸入三個整數x,y,z,請把這三個數由小到大輸出。
8、題目:利用條件運算子的巢狀來完成此題:學習成績>=90分的同學用A表示,60-89分之間的用B表示,60分以下的用C表示。
9.使用者輸入自己的隨機四位數卡號,編寫程式輸出提示資訊是否中獎。中獎規則,個位數字+十位數字+百位數字+千位數字 之和>18則中獎。
提示資訊分別是:“恭喜您,中獎啦!”“很遺憾,沒有中獎!”
10.張三公交卡有72.5元,李四公交卡有26.3元,讓他二人交換公交卡,編寫程式輸出交換前和交換後,兩人手上公交卡的金額。
11.題目:使用者輸入一個數,判斷是否是"水仙花數",所謂"水仙花數"是指一個三位數,其各位數字立方和等於該數本身。例如:153是一個"水仙花數",因為153=1的三次方+5的三次方+3的三次方。
下次課程預習內容:
主要知識點:if 和switch以及相關變形選擇結構
相關文章
- 學習vue第一階段小結Vue
- 第一階段複習
- 暑期java(物件導向設計)學習第一階段總結Java物件
- 堅持:學習Java後臺的第一階段,我學習了那些知識Java
- Java 學習路線之四個階段Java
- JAVA基礎是什麼?java學習有哪些階段Java
- 初學Java的5個階段,你在哪個階段?Java
- Java學習路線圖,其五個必經階段Java
- 【Web】Web 階段學習筆記Web筆記
- 第一階段:Java內功祕籍-線性表Java
- 讀懂深度學習,走進“深度學習+”階段深度學習
- 人工智慧學習階段有哪些?人工智慧
- 階段性總結_學習筆記筆記
- 線段樹進階 學習筆記筆記
- 第一階段day02
- C語言學習的幾個階段C語言
- 小白階段如何學習Web前端知識Web前端
- OOP課第一階段總結OOP
- Java進階容器學習Java
- 機器學習進階 第一節 第一課機器學習
- linux學習的基本分為三個階段Linux
- 關於Html+css階段學習總結HTMLCSS
- Java學習路線·進階Java
- 最新拓薪Java高階階段及ERP實戰專案(階段三)Java
- Python學習的十個階段,學完神功大成,對應一下看看你自己在哪個階段Python
- Python入門教程 | Python學習的必經階段Python
- 學習SSM階段使用到的jar包座標.SSMJAR
- web前端開發培訓有哪些學習階段Web前端
- JAVA學習第一天Java
- 學習java第一天Java
- Java進階學習之Java架構師的學習路線Java架構
- 5.7 結組開發第一階段展示
- 跳槽季的查漏補缺,談談對Java程式設計師學習當中各個階段的建議(第四階段)Java程式設計師
- 跳槽季的查漏補缺,談談對Java程式設計師學習當中各個階段的建議(第五階段)Java程式設計師
- 跳槽季的查漏補缺,談談對Java程式設計師學習當中各個階段的建議(第六階段)Java程式設計師
- 初學Java,這三個階段你經歷過嗎?Java
- 零基礎Python學習路線及階段學習目標【乾貨】Python
- 測一測你的演算法階段學習成果演算法