標籤:OLE 文法 報錯 str 的區別 oat 符號 相關 程式
第二天,資料類型1、java資料類型 8個
資料類型的作用:輸入原始資訊和處理資訊之間,暫時儲存這些原始的資訊。
java有兩大類:一類基礎資料型別 (Elementary Data Type),另一類是物件類型
1位元組--8位
類型佔用取值範圍
byte 1位元組2^(1*8) 256最小值是 -128(-2^7)最大值是 127(2^7-1)預設為0
short 2位元組2^(2*8) 65535預設值 0
long 8位元組......預設值 0L
int 4位元組.....預設值 0
儲存整數類型
———————————————————————————
float 4位元組預設值0.0f
double8位元組預設值0.0d
浮點數及小數
———————————————————————————
boolean表達值true和false 1位元組預設值false
char2位元組(實則底層是轉成整數儲存)最小值是 \u0000(即為0)最大值是 \uffff(即為65,535);
布爾類型
2、變數的定義和使用
變數的定義,就是使用資料類型暫時儲存輸入到電腦的原始資訊文法: 資料類型 標識符 = 初始值;(推薦) 資料類型 標識符 1,標識符2;(不推薦)
資料類型 標識符;(不推薦 因為如果以後代碼沒有用到該標識符則會報錯沒有初始化)
float f = 3.3 是錯的 因為3.3預設是double型的所以如果要定義浮點型必須是
float f = 3.3F 這是對的 所以一般小數直接寫後面不加F都是double型 而加了就是float型
3、運算子號(配合變數在一起使用)
(1)=,+,-,*,/,()%的運用(%是取餘數)100%3 會=1
運算規則
1、相同類型之間操作,結果就是這個類型
2、小於int類型相互間操作,結果自動提升為int
3、不同類型之間操作,結果以大類型為準
4、float與long操作,結果為float
(2)特殊的運算出錯 double和double:
double d = 4.4;
double d1 = 2.2;
System.out.println(f+d);
BigDecimal b1 = new BigDecimal(d1);
BigDecimal b2 = BigDecimal.valueOf(d);
System.out.println(d1);
System.out.println(d);
BigDecimal b3 = b1.add(b2);
//setScale設定值()中第一個數’2‘是指保留一位小數,’BigDecimal.ROUND_HALF_UP‘向上取整
double value = b3.setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
System.out.println(value);
(3)運算子號:數學相關、比較、邏輯、優先順序不必理會,可以直接添加()來改變優先順序。
(4)&&
true && true -->true
------------------------------------------
false && true -->false
false && false
true && false
&&和&的區別:從運算子來講,一個是邏輯運算子,一個是位元運算符。
從運算過程來看 &&有終止的功能 如false&&。。。如果之前的已經判斷為falsena後面的將不再運算
共同點:都可以使用者邏輯與運算。
(5)符合符號:+=,-=,*=,/=
作用:1.簡化操作
2.隱形轉化類型
byte b1 = 1;
byte b2 = 2;
byte b3 = b2+b1;
//類型隱形轉化,將byte轉化成int
//c.java:11: 錯誤: 不相容的類型: 從int轉換到byte可能會有損失
b2 += b1;
System.out.println(b2);//不會出錯
(6)自增
i++和++i的區別:i++先賦值後自增,++i先自增後賦值。
(7)三目運算子
。。。。(判斷的條件)?。。(符合條件之後):。。(不符合條件);
例如:char result = age>=18 ? ‘C‘ : ‘W‘;
(8)對象符號
in
(9)其他
位元運算符:
4、程式結構
3種結構
順序
分支、判斷
else if後面可以再次跟著一個boolean運算式
else if可以出現多次。else只能出現一次
else if,else不能單獨存在,必須依附if。if可以單獨存在。
if if
else if if
else if if
else if if
區別在於else if 條件符合之後就直接退出判斷
而if中 只要符合條件之後就會進判斷語句中
迴圈
Java從入門到入土100天,第二天