java Day002 筆記

Java的概念

注釋

注釋概念

用來對程序中的代碼進行解釋說明的部分

注釋的特點

編譯的時候不會檢測注釋中的語法是否正確

程序運行的時候不會運行注釋中內(nèi)容

注釋的分類

單行注釋? 樣式:? //? 注釋的內(nèi)容

單行注釋注釋的內(nèi)容不能回車

單行注釋可以嵌套

多行注釋? 樣式: /*? 注釋的內(nèi)容? ? */

多行注釋可以有回車

多行注釋不能嵌套

文本注釋(今天不講)

注釋用的總結(jié)

對代碼進行解釋說明

對程序的設(shè)計思路進行描述

可以用來調(diào)試程序(把認為有問題的代碼注釋掉,逐行打開注釋運行.直到找到錯誤所在位置)


注釋

關(guān)鍵字?

關(guān)鍵字的含義:?

在java中有一些被賦予特殊含義的英文單詞,這些單詞稱之為保留字.每個單詞都有特殊的功能?


關(guān)鍵字

?關(guān)鍵字特點 :

?都是純小寫字母 java是嚴格區(qū)分大小寫的: new New new1?

?其中const,goto雖然被保留了,但是沒有特殊含義?

?以后我們要給自定的內(nèi)容取名字,一定不要和關(guān)鍵字重名.



標識符

標識符的作用:?

用來給自定義內(nèi)容取名字的字符序列就叫做標識符. 以后給java中那些內(nèi)容取名字: 類, 接口, 枚舉, 變量, 常量, 方法, 包

標識符的組成內(nèi)容:

英文字母大小寫: a-z, A-Z

數(shù)字: 0-9

英文特殊符號: _(下劃線) $(美元符號)

其他國家的語言符號(中文, 日文, 泰文),實際開發(fā)不會實用.(基本不用)

標識符注意事項

不能和關(guān)鍵字重名 例如: class(錯誤)? class1(正確)

不能以數(shù)字開頭? 例如: 1a(錯誤)? a1(正確)

標識符區(qū)分大小寫 例如: a 和A? 不同的標識符



常量

常量的概念:

指的是程序的執(zhí)行過程中,值不能發(fā)生改變的量就是常量

賦值運算符:

=? 作用:把符號右邊的值,賦值給左邊的內(nèi)容

常量根據(jù)表現(xiàn)形式的分類

字面值常量 任意寫出一個數(shù)據(jù),這個數(shù)據(jù)根據(jù)他字面意思就知道它代表什么值,這樣常量就叫做字面值常量:? 比如: 5,? 3.14? “helloworld”,? -100

符號常量: 給常量取了個名字,通過這個名字就可以獲取到它存儲常量值, 根據(jù)這符號也能知道他表示的是什么意思.像這樣的常量就是符號常量? ? ? ? ? ? ? ? 例如: MAX = 100;? MIN = -100;

根據(jù)數(shù)據(jù)類型對常量的分類

基本類型的數(shù)據(jù):

簡單的數(shù)據(jù),數(shù)據(jù)就是表示自己

整數(shù)類型常量

? 隨便寫一個整數(shù)就是整型常量: 比如: 100, -1, 0, 530, 1314

小數(shù)類型常量

? 隨便寫一個小數(shù)就是小數(shù)常量: 比如:3.14, 0.2, -0.615

字符類型常量

? 使用單引號括起來的單個字符就是字符常量: 比如:’a’, ‘國’, ‘1’

布爾類型常量

? 用來表示真假的常量, 只有兩個值: true 和 false

引用類型的數(shù)據(jù):?

復(fù)雜的數(shù)據(jù)類型,數(shù)據(jù)表示不再是自身,是一種由多種其他類型的數(shù)據(jù)組合而成的類型.

字符串常量:?

使用雙引號括起來的字符序列就是字符串常量,字符序列個數(shù)可以0或者n個.? 比如: “”, “a”, “HelloWorld!!!”

空常量:?

null, 表示空,代表不指向任何內(nèi)存空間的位置. null不能打印,否則報錯


常量

變量

數(shù)據(jù)類型

Java是一門非常嚴謹?shù)恼Z言, 所以它是一種強類型語言,在java要存儲數(shù)據(jù)的時候,就要指明這個數(shù)據(jù)在內(nèi)存中所占的空間大小. 只有這樣才能為這個數(shù)據(jù)開辟內(nèi)存空間存儲它.

數(shù)據(jù)類型的作用就是用來規(guī)定數(shù)據(jù)在內(nèi)存中所占空間大小的.java中提供了豐富的數(shù)據(jù)類型,不同的數(shù)據(jù)類型,表示的內(nèi)存空間大小是不一樣的.

java中數(shù)據(jù)類型的分類

基本類型的數(shù)據(jù)類型:?

這些類型都是在jdk中已經(jīng)提前定義好了,不能添加也不會減少,描述的都是一些簡單的數(shù)據(jù),描述的都是數(shù)據(jù)本身.

引用類型的數(shù)據(jù)類型:?

負責的數(shù)據(jù)類型,描述的不是數(shù)據(jù)本身,而是數(shù)據(jù)在內(nèi)存中地址,根據(jù)這個地址就可以找到他存儲的數(shù)據(jù). 在jdk中有一些引用類型的數(shù)據(jù)已經(jīng)提前定義好了,但是我們也可以自定引用類型的數(shù)據(jù).

基本數(shù)據(jù)類型

整數(shù)類型

byte? ? ? ? ? 1個字節(jié)

short? ? ? ? ?2個字節(jié)

int? ? ? ? ? ? ?4個字節(jié)

long? ? ? ? ? 8個字節(jié)


小數(shù)類型

float? ? ? ? ? ?4個字節(jié)

double? ? ? ?8個字節(jié)

字符類型

char? ? ? ? ? ?2個字節(jié)

布爾類型

boolean? ? ? 未知? ? ? ? ? ? ? true和false


字符類型

字符類型就是char. 存儲的都是使用單引號括起來的單個字符.

在計算機中,所有數(shù)據(jù)最終存儲到計算機中都是以二進制存儲,也就是符號不可能直接放到內(nèi)存或者硬盤上.

字符串類型

字符串是一個引用類型的數(shù)據(jù). 它也有類型名. 類型名為:String

如何定義String類型變量:

String 變量名 = 初始值;

數(shù)據(jù)類型之隱式轉(zhuǎn)換

當小范圍數(shù)據(jù)類型和大范圍數(shù)據(jù)類型在一起運算符時候, 會將小范圍數(shù)據(jù)類型自動提升為大范圍數(shù)據(jù)類型.然后再進行運算. 運算的結(jié)果依然是大范圍數(shù)據(jù)類型.

隱式轉(zhuǎn)換最直接體現(xiàn): 大范圍類型變量 = 小范圍類型變量;

數(shù)據(jù)類型隱式轉(zhuǎn)換只針對數(shù)值類型數(shù)據(jù). boolean不是數(shù)值類型數(shù)據(jù),其他基本類型都是數(shù)值類型的

數(shù)據(jù)類型范圍的大小關(guān)系羅列

? byte < short<int<long<float<double

? char < int < long < float < double

注意事項

byte, short, char, int這幾種類型在運算的時候,統(tǒng)統(tǒng)都會提升為int類型.

int及int類型范圍的數(shù)據(jù)類型做運行的時候, 也會進行類型向上提升,那個類型的范圍大,最終就提升為那個范圍的數(shù)據(jù).

例如; int + float? ---> float

? ? float + float -->? float

? ? float + double-->? double

數(shù)據(jù)類型之顯式轉(zhuǎn)換(強類型轉(zhuǎn)換)

當我們使用大范圍數(shù)據(jù)類型給小范圍的數(shù)據(jù)類型賦值的時候,就需要使用顯示轉(zhuǎn)換或者強制轉(zhuǎn)換的方式才能完成, 否則不允許直接賦值.

強制類型轉(zhuǎn)換的格式:

? 小范圍數(shù)據(jù)類型? = (小范圍數(shù)據(jù)類型名) 大范圍的數(shù)據(jù)類型;

? 比如:? short b = 10; int c = 20;

? ? ? ? ? ? b = (short)c;

注意:

? 強制類型轉(zhuǎn)換有風險, 會導(dǎo)致數(shù)據(jù)溢出.也就是數(shù)據(jù)的丟失.

運算符

運算符的概述:

就是用來對程序中的數(shù)據(jù)進行的操作的符號.

運算符的分類:

1.算術(shù)運算符

用來做算術(shù)運算符的符號

符號的羅列: +, -, *, /, %

+:加號運算符

做加法運算符

表示正數(shù)

表字符串的拼接, 只要加號運算符兩邊有一個邊字符串時,此時加號的作用就是拼接

-:減號運算符

做減法運算符

表示負數(shù)

*:乘法運算符

表示求兩個數(shù)據(jù)的乘積

/:除法運算符

表示求兩個數(shù)的商

注意:

兩邊都是整數(shù),結(jié)果依然整數(shù)

兩邊只要有一邊是小數(shù),結(jié)果就是小數(shù).

除數(shù)不能為0,否則運行報錯

%: 取余(模)運算符

求出兩個數(shù)相除之后的余數(shù)

? 除不盡,余數(shù)的正負只和被除數(shù)有關(guān),被除數(shù)是正的,余數(shù)就是正的,否則就是負的.

? 除的盡余數(shù)就是0.

? 作用: 使用它判斷一個數(shù)字的奇偶.


自增.自減運算符

1. 自增和自減運算符只能操作變量,不能操作常量.

2. 自增運算符運算完之后讓變量+1, 自減運算符運算完之后會讓變量-1.

3. 自增: ++? 運算完的結(jié)果就是變量+1

4. 自減:--? 運算完之后會讓變量 - 1

5. ++和--都可以即出現(xiàn)在變量前,也可以出現(xiàn)變量后.

6. ++和--出現(xiàn)變量前后對整個式子值的影響:

++在變量前: 先對變量加1,再把變量的值當做式子的值.? ? ---> 先加后用

? ++在變量后: 先取出變量的值當做式子的值,再對變量加1? ---> 先用后加

? --在變量前: 先對變量減1,再把變量的值當做式子的值.? ? ---> 先減后用

? --在變量后: 先取出變量的值當做式子的值,再對變量減1? ---> 先用后減


2.賦值運算符

用來給變量進行賦值操作的符號

賦值運算符的分類:

基本賦值運算符:? =

復(fù)合賦值運算符: +=, -=, *=, /=, %=

復(fù)合賦值運算符

? +=:? a+=3, 等價于: a = a + 3

? -=:? a-=3. 等價于: a = a - 3;

? *=:? a*=3 等價于: a = a*3;

? /=:? a/=3? 等價于: a = a / 3;

? %=:? a %=3? 等價于: a = a % 3;

復(fù)合賦值運算符工作的特點: 將變量使用第一個符號對右邊的數(shù)據(jù)操作之后,重新賦值給這個變量本身.


3.比較運算符

比較數(shù)據(jù)大小和數(shù)據(jù)是否相等的運算符.

分類

比較大小的運算符: >, <, >=, <=? ? 只能用來比較數(shù)值類型數(shù)據(jù)

比較是否相等的運算符: ==, !=? ? 可以任意類型的數(shù)據(jù)

運算符的結(jié)果:

比較運算符的結(jié)果都是boolean的數(shù)據(jù), 要么為true,要么為false


4.邏輯運算符

用來對邏輯值進行操作的運算符. 邏輯值指的就是boolean類型的數(shù)據(jù) ,邏輯運算符處理之后的結(jié)果依然是邏輯值.

邏輯運算符的羅列: &&(邏輯與)? || (邏輯或)? !(邏輯非)

&&: 邏輯與, 兩邊全真則真, 一假則假

? true && true? --> true

? false && true? --> false

? true && false? --> false

? false && false? -->false

||:邏輯或, 一真則真,同假才假

? true || true --> true

? false || true --> true

? true || false --> true

? false || false --> false

!:邏輯非, 非真既假,非假既真

? !true -- > false

? !false --> true


5.位運算符

對內(nèi)存中的二進制數(shù)據(jù)進行直接操作的運算符,就是位運算符.

只能操作整數(shù),? 不能操作小數(shù)

咱們要了解位運算符有哪些: <<,? >>,? >>>

<<: 左移運算符 ,每移動一位,相當于乘以2的一次方. 移動幾位就乘以2的幾次方.

5 << 1? 5 * 21? =? 10

>>: 右移運算符, 每移動一位,相當于除以2的一次方,移動幾位就除以 2個幾次方

8 >> 1? 8 / 2 = 4

-16 >> 2? -16 / 4 = -4

>>>:無符號右移運算符: 每移動一位,相當于除以2的一次方,移動幾位就除以 2個幾次方? 只能操作正整數(shù). 負數(shù)不要使用它操作.

總結(jié)特點:如果想讓數(shù)據(jù)快速求出乘2或者2除的結(jié)果,就可以使用這個符號,比直接做*和/的效率要高的多.


6.三目(元)運算符

目和元一個意思: 指的就是運算符能操作的數(shù)據(jù)個數(shù).

三目運算符: 同時能操作三個數(shù)據(jù).

格式: 表達式1 ? 表達式2 : 表達式3;

格式說明:

表達式1: 必須是一個返回值是布爾類型的式子, 如果一個式子返回值是boolean類型,這個式子就稱之為布爾表達式.

表達式2和表達式3可以是任意類型結(jié)果的式子.

三目運算符的運行規(guī)則

1. 計算表達式1的值, 要么為true,要么為false

2. 如果表達式1計算結(jié)果為true, 就會把表達式2的結(jié)果當做整個三目運算符的結(jié)果返回.

3. 如果表達式1計算結(jié)果為false, 就會把表達式3的結(jié)果當做整個三目運算符的結(jié)果返回.


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容