国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Java 數(shù)據(jù)類型和運(yùn)算符

archieyang / 525人閱讀

摘要:基本數(shù)據(jù)類型布爾類型或,占用位。強(qiáng)制類型轉(zhuǎn)換強(qiáng)制類型轉(zhuǎn)換的語法格式是,強(qiáng)制類型轉(zhuǎn)換的運(yùn)算符是圓括號(hào)。無符號(hào)右移運(yùn)算符。對(duì)于低于類型如和的操作數(shù)總是先自動(dòng)類型轉(zhuǎn)換為類型后再移位。

注釋

單行注釋//......
多行注釋/ .../
文檔注釋/*.../ 文檔注釋位于注釋內(nèi)容上一行

標(biāo)識(shí)符和關(guān)鍵字 分隔符

分號(hào):作為語句的分隔,每個(gè)Java語句必須使用分號(hào)作為結(jié)尾。
花括號(hào):定義一個(gè)代碼塊,一個(gè)代碼塊指的就是{}中所包含的一段代碼,代碼塊在邏輯上是一個(gè)整體。
方括號(hào):用于訪問數(shù)組元素,通常緊跟數(shù)組變量名,方括號(hào)里指定希望訪問的數(shù)組元素的索引。
圓括號(hào):定義方法時(shí)必須使用圓括號(hào)來包含所有的形參聲明;調(diào)用方法時(shí)也必須使用圓括號(hào)來傳入實(shí)參值;將表達(dá)式中某個(gè)部分括成一個(gè)整體,保證這個(gè)部分優(yōu)先計(jì)算;強(qiáng)制類型轉(zhuǎn)換的運(yùn)算符
空格
圓點(diǎn):類/對(duì)象和它的成員(包括成員變量、方法和內(nèi)部類)之間的分隔符,表明調(diào)用某個(gè)類或某個(gè)實(shí)例的指定成員。

標(biāo)識(shí)符

以字母、下劃線_、美元符$開頭,后面可以跟任意數(shù)目的字母、數(shù)字、下劃線、美元符,字母也可以包含中文字符、日文字符等。區(qū)分大小寫。

關(guān)鍵字

Java的所有關(guān)鍵字都是小寫的

abstract    continue    for            new            switch
assert      default     if             package        synchronized
boolean     do          goto           private        this
break       double      implements     protected      throw
byte        else        import         public         throws
case        enum        instanceof     return         transient
catch       extends     int            short          try
char        final       interface      static         void
class       finally     long           strictfp       volatile
const       float       native         super          while

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

Java語言是強(qiáng)類型語言:①所有的變量必須先聲明,后使用;②指定類型的變量只能接受類型與之匹配的值。

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

布爾類型

 true或false,占用8位。(最小內(nèi)存單元是字節(jié))布爾類型的變量或值主要用作旗標(biāo)來進(jìn)行流程控制。

 if條件控制語句
 while循環(huán)控制語句
 do while循環(huán)控制語句
 for循環(huán)控制語句
 三目運(yùn)算符(?:)
    

數(shù)值類型:整數(shù)類型、字符類型、浮點(diǎn)類型

整型:byte(8)、short(16)、int(32)、long(64)
    直接給出一個(gè)整數(shù)值默認(rèn)就是int類型。
    如果直接將一個(gè)較小的整數(shù)值賦予一個(gè)byte或short變量,系統(tǒng)會(huì)自動(dòng)把這個(gè)整數(shù)值當(dāng)成byte或short類型來處理。  
    如果使用一個(gè)巨大的整數(shù)值(超出int類型范圍),Java不會(huì)自動(dòng)把這個(gè)整數(shù)值當(dāng)成long類型來處理。應(yīng)在這個(gè)整數(shù)值后增加L作為后綴。
    
    二進(jìn)制0B或0b開頭;八進(jìn)制以0開頭;十六進(jìn)制以0X或0x開頭;
    二進(jìn)制數(shù)默認(rèn)占32位,其中第32位是符號(hào)位
    
    所有數(shù)字在計(jì)算機(jī)底層都是以二進(jìn)制形式存在的,原碼是直接將一個(gè)數(shù)值換算成二進(jìn)制數(shù)。但計(jì)算機(jī)以補(bǔ)碼的形式保存所有的整數(shù)。補(bǔ)碼的計(jì)算規(guī)則:正數(shù)的補(bǔ)碼和原碼完全相同,負(fù)數(shù)的補(bǔ)碼是其反碼加1;反碼是對(duì)原碼按位取反,只是最高位(符號(hào)位)保持不變。

字符型:16位,Unicode字符集,使用用單引號(hào)括起來
    單個(gè)字符來指定字符型值"A";轉(zhuǎn)義字符來表示特殊字符型值"
";直接使用Unicode值來表示字符型值,"uXXXX",其中XXXX代表一個(gè)十六進(jìn)制的整數(shù)
    
    Java語言中常用的轉(zhuǎn)義字符
        退格符
    
    換行符
    
    回車符
    	    制表符
    "    雙引號(hào)
    "    單引號(hào)               
        反斜線 
    
    char類型的值也可直接作為char類型來處理,相當(dāng)于一個(gè)16位的無符號(hào)整數(shù)。char類型的變量、值完全可以參與加、減、乘、除等數(shù)學(xué)運(yùn)算,也可以比較大小——用該字符對(duì)應(yīng)的編碼參與運(yùn)算。
    
    String類表示字符串,使用雙引號(hào)括起來。
    
浮點(diǎn)型:float(32)、double(64)
    float:第1位符號(hào)位,接下來8位表示指數(shù),再接下來23位表示尾數(shù)。
    double:第1位符號(hào)位,接下來11位表示指數(shù),再接下來的52位表示尾數(shù)。
    
    Java語言的浮點(diǎn)數(shù)有兩種表示形式
        十進(jìn)制數(shù)形式,浮點(diǎn)數(shù)必須包含一個(gè)小數(shù)點(diǎn)。
        科學(xué)計(jì)數(shù)法形式
        
    默認(rèn)類型是double類型,如果希望Java把一個(gè)浮點(diǎn)類型值當(dāng)成float類型處理,應(yīng)該在這個(gè)浮點(diǎn)類型值后緊跟f或F。
    三個(gè)特殊的浮點(diǎn)數(shù)值:
        正無窮大:Double或Float類的POSITIVE_INFINITY。
        負(fù)無窮大:Double或Float類的NEGATIVE_INFINITY。
        非數(shù):Double或Float類的NaN;NaN不與任何數(shù)值相等,甚至和NaN都不相等。
        

數(shù)值中使用下劃線分割

通過使用下劃線分割,可以更直觀地分辨數(shù)值中到底包含多少位。
        
基本類型的類型轉(zhuǎn)換 自動(dòng)類型轉(zhuǎn)換

當(dāng)把一個(gè)表數(shù)范圍小的數(shù)值或變量直接賦給另一個(gè)表數(shù)范圍大的變量時(shí),系統(tǒng)將可以進(jìn)行自動(dòng)類型轉(zhuǎn)換。
char → int → long → float → double
byte → short → long → float → double
+不僅可以作為加法運(yùn)算符使用,還可作為字符串連接運(yùn)算符使用。

強(qiáng)制類型轉(zhuǎn)換

強(qiáng)制類型轉(zhuǎn)換的語法格式是(targetType)value,強(qiáng)制類型轉(zhuǎn)換的運(yùn)算符是圓括號(hào)。
8個(gè)包裝類:Boolean、Byte、Short、Integer、Long、Character、Float、Double。parseXxx(String str)靜態(tài)方法用于將字符串轉(zhuǎn)換成基本類型。

表達(dá)式類型的自動(dòng)提升
當(dāng)一個(gè)算術(shù)表達(dá)式中包含多個(gè)基本類型的值時(shí),整個(gè)算術(shù)表達(dá)式的數(shù)據(jù)類型將發(fā)生自動(dòng)提升。

所有的byte類型、short類型和char類型將被提升到int類型。

整個(gè)算術(shù)表達(dá)式的數(shù)據(jù)類型自動(dòng)提升到與表達(dá)式中最高等級(jí)操作數(shù)同樣的類型。

直接量

直接量是指在程序中通過源代碼直接給出的值。

直接量的類型

能指定直接量的通常只有:基本類型、字符串類型和null類型。int、long、float、double、boolean、char、String、null。

null可以賦給任何引用類型的變量,用以表示這個(gè)引用類型變量中保存的地址為空,即還未指向任何有效對(duì)象。

直接量的賦值

允許把一個(gè)數(shù)字直接量直接賦給另一種類型的變量,這種賦值必須是系統(tǒng)所支持的自動(dòng)類型轉(zhuǎn)換;String類型的直接量不能賦給其他類型的變量;null類型的直接量可以直接賦給任何引用類型的變量,包括String類型;boolean類型的直接量只能賦給boolean類型的變量,不能賦給其他任何類型的變量

當(dāng)程序第一次使用某個(gè)字符串直接量時(shí),Java會(huì)使用常量池(constant pool)來緩存該字符串直接量,如果程序后面的部分需要用到該字符串直接量時(shí),Java會(huì)直接使用常量池(constant pool)中的字符串直接量

由于String類是一個(gè)典型的不可變類,因此String對(duì)象創(chuàng)建出來就不可能被改變

常量池(constant pool)指的是編譯期被確定,并被保存在已編譯的.class文件中的一些數(shù)據(jù)。包括關(guān)于類、方法、接口中的常量,也包括字符串直接量

String s0 = "hello";
String s1 = "hello";    
String s2 = "he" +"llo";    
System.out.println( s0 == s1 );    // true
System.out.println( s0 == s2 );    // true

Java會(huì)確保每個(gè)字符串常量只有一個(gè),不會(huì)產(chǎn)生多個(gè)副本,例子中的s0和s1中的"hello"都是字符串常量,它們?cè)诰幾g期就被確定了,所以s0 == s1返回true;而"he"和"llo"也都是字符串常量,當(dāng)一個(gè)字符串由多個(gè)字符串常量連接而成時(shí),它本身也是字符串常量,s2同樣在編譯期就被解析為一個(gè)字符串常量,所以時(shí)s2也是常量池中"hello"的引用

運(yùn)算符 算術(shù)運(yùn)算符
+:加法運(yùn)算符、字符串的連接運(yùn)算符
-:減法運(yùn)算符
*:乘法運(yùn)算符
/:除法運(yùn)算符。如果兩個(gè)操作數(shù)都是整數(shù)類型,則計(jì)算結(jié)果也是整數(shù),將自然除法的結(jié)果截?cái)嗳≌?;除?shù)不可以是0,否則將引發(fā)除以零異常。
%:求余運(yùn)算符。如果兩個(gè)操作數(shù)都是整數(shù)類型,則求余運(yùn)算的第二個(gè)操作數(shù)不能是0,否則將引發(fā)除以零異常;如果兩個(gè)操作數(shù)中有一個(gè)或者兩個(gè)都是浮點(diǎn)數(shù),則允許第二個(gè)操作數(shù)是0或0.0,結(jié)果是非數(shù);0或0.0對(duì)零以外的任何數(shù)求余都將得到0或0.0。
++:自加。①自加是單目運(yùn)算符,只能操作一個(gè)操作數(shù);②自加運(yùn)算符只能操作單個(gè)數(shù)值型(整型、浮點(diǎn)型都行)的變量,不能操作常量或者表達(dá)式;
    ++放在左邊,先把操作數(shù)加1,然后才把操作數(shù)放入表達(dá)式中運(yùn)算;++放右邊,先把操作數(shù)放入表達(dá)式中運(yùn)算,然后才把操作數(shù)加1。
--:自減。
java.lang.Math類:Math.pow(a,5) 求a的5次方;Math.sqrt(a) 求a的平方根;Math.random()返回0~1之間的偽隨機(jī)數(shù); Math.sin(1.57) 求1.57的sin函數(shù)值
-:求負(fù)運(yùn)算符

位運(yùn)算符
&:按位與。當(dāng)兩位同時(shí)為1時(shí)才返回1。
|:按位或。只要有一位為1即可返回1。
~:按位非。單目運(yùn)算符,將操作數(shù)的每個(gè)位(包括符號(hào)位)全部取反。
^:按位異或。當(dāng)兩位相同時(shí)返回0,不同時(shí)返回1。
<<:左移運(yùn)算符。將操作數(shù)的二進(jìn)制碼整體左移指定位數(shù),左移后右邊空出來的位以0填充。5<<2,5左移2位。
>>:右移運(yùn)算符。把第一個(gè)操作數(shù)的二進(jìn)制碼右移指定位數(shù)后,左邊空出來的位以原來的符號(hào)位填充,即如果第一個(gè)操作數(shù)原來是正數(shù),則左邊補(bǔ)0;如果第一個(gè)操作數(shù)是負(fù)數(shù),則左邊補(bǔ)1。
>>>:無符號(hào)右移運(yùn)算符。把第一個(gè)操作數(shù)的二進(jìn)制碼右移指定位數(shù)后,左邊空出來的位總是以0填充。
1.對(duì)于低于int類型(如byte、short和char)的操作數(shù)總是先自動(dòng)類型轉(zhuǎn)換為int類型后再移位。
2.對(duì)于int類型的整數(shù)移位a>>b,當(dāng)b>32時(shí),系統(tǒng)先用b對(duì)32求余,得到的結(jié)果才是真正移位的位數(shù)。
3.對(duì)于long類型的整數(shù)移位a>>b,當(dāng)b>64時(shí),總是先用b對(duì)61求余,得到的結(jié)果才是真正移位的位數(shù)。
賦值運(yùn)算符

用于為變量指定變量值

擴(kuò)展后的賦值運(yùn)算符
具有更好的性能,而且程序更加健壯,推薦使用。
+=    -=    *=    /=    &=    |=    ^=    <<=    >>=    >>>=
比較運(yùn)算符
>    >=    <    <=    ==    !=

==:如果進(jìn)行比較的兩個(gè)操作數(shù)都是數(shù)值類型,即使他們的數(shù)據(jù)類型不相同,只要它們的值相等,也都將返回true。如91="a"返回true,5.0==5也返回true。如果兩個(gè)操作數(shù)都是引用類型,那么只有當(dāng)兩個(gè)引用變量的類型具有父子關(guān)系時(shí)才可以比較,而且這兩個(gè)引用必須指向同一個(gè)對(duì)象才會(huì)返回true。

邏輯運(yùn)算符

用于操作兩個(gè)布爾型的變量或常量。

&總會(huì)計(jì)算前后兩個(gè)操作數(shù),而&&先計(jì)算左邊的操作數(shù),如果左邊的操作數(shù)為false,則直接返回false,根本不會(huì)計(jì)算右邊的操作數(shù)。
&&:與,前后兩個(gè)操作數(shù)必須都是true才返回true,否則返回false。
&:不短路與,作用與&&相同,但不會(huì)短路

||如果第一個(gè)操作數(shù)返回true,||將不再對(duì)第二個(gè)操作數(shù)求值,直接返回true。|總是執(zhí)行前后兩個(gè)操作數(shù)。
||:或,只要兩個(gè)操作數(shù)中有一個(gè)是true,則返回false;如果操作數(shù)為false,則返回true。
|:不短路或,作用與||相同,但不會(huì)短路。

!:非,只需要一個(gè)操作數(shù),如果操作數(shù)為true,則返回false;如果操作數(shù)為false,則返回true。
^:異或,當(dāng)兩個(gè)操作數(shù)不同時(shí)才返回true,如果兩個(gè)操作數(shù)相同則返回false

三目運(yùn)算符

(expression)?if-true-statement:if-false-statement

先對(duì)邏輯表達(dá)式expression求值,如果邏輯表達(dá)式返回true,則返回第二個(gè)操作數(shù)的值,如果邏輯表達(dá)式返回false,則返回第三個(gè)操作數(shù)的值。三目運(yùn)算符都是作為if else的精簡(jiǎn)寫法。
三目運(yùn)算符不支持多個(gè)語句,但可以嵌套。

運(yùn)算符的結(jié)合性和優(yōu)先級(jí)
分隔符                .    []    ()    {}    ,    ;
單目運(yùn)算符            ++    --    ~     !
強(qiáng)制類型轉(zhuǎn)換運(yùn)算符    (type)
乘法/除法/求余         *     /    %
加法/減法              +     -
移位運(yùn)算符             <<    >>   >>>
關(guān)系運(yùn)算符             <     <=    >    >=   instanceof
等價(jià)運(yùn)算符             ==    !=
按位與                 &
按位異或               ^
按位或                 |
條件與                 &&
條件或                 ||
三目運(yùn)算符              ?:
賦值運(yùn)算符              =    +=   -=   *=  /=   &=   |=   ^=   %=   <<=   >>=   >>>=  


文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/65241.html

相關(guān)文章

  • 【從基礎(chǔ)學(xué) Java運(yùn)算符數(shù)據(jù)類型

    摘要:是一種強(qiáng)類型語言,因此,定義了基本數(shù)據(jù)類型。運(yùn)算符先從運(yùn)算符談起?;緮?shù)據(jù)類的基本數(shù)據(jù)類型同其它高級(jí)程序語言比較類似。常用類類型除了一些基本數(shù)據(jù)類型,提供的一些類類型,使用頻率也很高。 Java 是一種強(qiáng)類型語言,因此,Java 定義了基本數(shù)據(jù)類型。同時(shí), Java 和其它高級(jí)計(jì)算機(jī)語言一樣,有多種運(yùn)算符,這在我們編程過程中極為有用。 運(yùn)算符 先從運(yùn)算符談起。 顧名思義,運(yùn)算符解決的是...

    izhuhaodev 評(píng)論0 收藏0
  • Java零基礎(chǔ)入門筆記|原來學(xué)Java可以這么簡(jiǎn)單

    摘要:剛開始學(xué)習(xí)的時(shí)候,可能是一頭霧水,不知道從何學(xué)起。這個(gè)教程總體來說就像列文虎克教學(xué),細(xì)到極致,妙到毫巔。適合絕對(duì)零基礎(chǔ)的,每個(gè)知識(shí)點(diǎn)掰開了揉碎了講解。 剛開始學(xué)習(xí)java的時(shí)候,可能是一頭霧水,不知道從何學(xué)起。還有很多Java小白,在剛自學(xué)Java的時(shí)候玩命的學(xué)習(xí),玩命的記住Java原理,天天早上五點(diǎn)起床背Java的一些英...

    2bdenny 評(píng)論0 收藏0
  • java學(xué)習(xí)(二) —— java基礎(chǔ)語法

    摘要:前言的基礎(chǔ)語法與有很多相似之處,但是也有一些特定的關(guān)鍵詞是獨(dú)有的。以開頭八進(jìn)制由,,組成。整數(shù)默認(rèn)是十進(jìn)制十六進(jìn)制由,,,,,,,,組成。初始化值必須初始化值,否則不能使用變量。 前言 java的基礎(chǔ)語法與php有很多相似之處,但是也有一些特定的關(guān)鍵詞是java獨(dú)有的。 java的基礎(chǔ)語法大體就包括:關(guān)鍵字,標(biāo)識(shí)符,注釋,常量,進(jìn)制和進(jìn)制轉(zhuǎn)換,變量,數(shù)據(jù)類型和類型轉(zhuǎn)換,運(yùn)算符,語句 ...

    caiyongji 評(píng)論0 收藏0
  • Java編程基礎(chǔ)02——Java語言基礎(chǔ)

    摘要:所以就想把一大串縮短點(diǎn),將二進(jìn)制中的三位用一位表示。以可以大寫也可以小寫開頭版本可以表示二進(jìn)制了八進(jìn)制的數(shù)據(jù)表現(xiàn)形式由組成。結(jié)果把系數(shù)基數(shù)的權(quán)次冪相加即可。因?yàn)檎Z言采用的是碼來編碼的。 1_(常量的概述和使用)* A:什么是常量(constant) 在程序執(zhí)行的過程中其值不可以發(fā)生改變 B:Java中常量的分類 字面值常量 自定義常量(面向?qū)ο蟛糠种v) C:字面值常量的...

    pakolagij 評(píng)論0 收藏0
  • Java語言組成

    摘要:規(guī)則可以由字母,數(shù)字,下劃線,美元符組成,但不能包含,,空格等其他特殊字符,不能以數(shù)字開頭。例如和都是修飾符,另外還有和。注釋在中,一行注釋以雙斜杠標(biāo)識(shí)多行注釋包含在和之間文檔注釋包含在和之間。 開源地址 開源項(xiàng)目地址:https://github.com/371854496/...java學(xué)習(xí)資料:https://github.com/371854496/...各位覺得還闊以的話,點(diǎn)...

    mtunique 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<