java第二章 變數和運算子

來源:互聯網
上載者:User

標籤:har   轉換   oat   浮點型   +=   事先   自動   過程   關係運算   

 

Java 基礎應用編程——  變數和運算子

1、Java程式結構

         資料類型:確定要儲存在記憶體中的資料的類型

         變數:是儲存資料的基本單元

2、變數的概念

    變數是指在程式的運行過程中隨時可以發生變化的量

    變數是程式中資料的臨時存放場所

3、資料類型及分類

         基礎資料型別 (Elementary Data Type):4類8種基礎資料型別 (Elementary Data Type)

         引用資料類型

 

整數類型 — byte、short、int預設、long

                Java中整型的三種表示形式

                        十進位整數:0 ~ 9,註:第一位不能是0

                       十六進位數:0 ~ 9 A ~ F, 註:必須以0x或0X開頭

例如: 0X8A 0x12

           八進位整數:0 ~ 7,註:必須以0開頭

例如: 0123 012

           八進位整數:0 ~ 7,註:必須以0開頭

 

浮點數類型 — float 、double

            與整數類型相似,Java浮點數類型有固定的表數範圍和欄位長度,不受平台影響

 

字元類型 — char

          單個字元用 char 類型表示,通常取值可為:

            英文字母、數字、逸出序列、特殊字元等

            Java中的字元佔兩個位元組(16位),因此可用十六進位編碼形式表示

           Java中的字元類型的值通常用單引號( ? ‘ )括起來

? ‘A‘ -> 0x0041

? ‘中‘-> 0x4e2d

? 在編碼中: ‘0‘~‘9‘, ‘a‘~‘z‘, ‘A‘~‘Z‘都是連續編碼的!

? ‘0‘與‘\u0000‘不是同一個字元

? 最小值:0, 最大值:65535 = 2^16-1

– 字元字面量使用單引號為定界符號:

? ‘中‘ 是整數常量!

 

逸出字元

 

4、資料類型的轉換規則

         兩種資料類型轉換方式:

自動類型轉換(隱式類型轉換):有多種類型的資料混合運算時,系統首先自動的將所有資料轉換成容量最大的那一種資料類型,然後進行計算

  自動轉換規則

           boolean類型不可以轉換為其他的資料類型

            整型、字元型、浮點型的資料在混合運算中相互轉換,轉換時遵守以下原則

 

byte、short、char之間不會相互轉換,他們三者在計算時首先會轉換為int類型

強制類型轉換(顯示類型轉換)

  容量大的資料類型轉換為容量小的資料類型時,需要使用強制類型轉換,其格式如下:

例如: byte a;

int b;

a = (byte) b;

  在強制類型轉換過程中,源類型的值可能大於目標類型,因此可能造成精度降低或溢出

5、運算子(操作符)

  是一種特殊的符號,用以表示資料的運算、賦值和比較

  運算子的種類:

  算術運算子: +、﹣、*、/、%、++、 --

  賦值運算子:=、+=、﹣=、*=、/=、%=

   比較子:>、<、>=、 <=、= =、!=、instanceof

  邏輯運算子:!、&&、||

  位元運算符: &、|、^ 、 ~、>>、<<、>>>

  條件運算子: ? :

  條件運算子很獨特,因為它是用三個運算元組成運算式的三元運算子。它可以替代某種類型的 if-else 語句

 

算術運算子

 自增運算: ++, --

? i++, 後++, 先將i的值作為整個表達的值, 然後將i增加1.

? ++i, 先++, 先將i增加1, 然後將i的值作為整個表達的值.

? 如:

– int a = 1; int b=1;

– b = a++;//

? 1 a++運算式的值是1

? 2 執行a=a+1

? 3 執行賦值運算, 將運算式的值1賦值給b, 即b=1

賦值運算子

 

關係運算子(比較子)

 

邏輯運算子(布林運算子)

  邏輯運算子兩端的運算元必須是布爾類型的值

 

位元運算(只對byte、short、char、int、long有效)

  左移和右移運算相當於實現整數乘以或除以2的n次方

 

邏輯與或同按位與或是有一定區別的:

– 相同點是:都能參與邏輯運算,按位與或完全可以代替邏輯與或;

– 區別是:按位與或可以參與位元運算,邏輯與或只能參與邏輯運算,邏輯與或可以“短路”,按位與或不能“短路”。

? 短路運算

– 作用運算子:邏輯與&&,邏輯或||

如(1):邏輯運算式:a>b && c>d

假設a>b 為false,c>d為true,那麼整個運算式結果為false;

假設a>b 為false,c>d為false,那麼整個運算式結果還為false;

可見,a>b的結果已經決定了整個運算式的結果,而後面的c>d並不影響運算式的結果,可以說後半部分被“ 短路”了。

如(2):邏輯運算式: a>b || c>d

假設a>b 為true,那麼後半部分運算式將被“短路”;

三元運算子

– 所謂三元運算子,是對三個運算式進行的集中比較,運算式1的結

果為true時,就為第二個運算式,如果為false時,就為第三個表

達式。文法是:

– 運算式1?運算式2:運算式3

– 通過下面代碼說明三元運算子。

運算子的優先順序

- 運算式通常由多個運算子組成。優先順序的規則決定每個運算子在任何給定運算式中的計算順序

 

6、運算式

  運算式的值和類型

         對錶達式中運算元進行運算得到的結果稱為運算式的值

          運算式值的資料類型即為運算式的類型

  運算式的運算順序

         應按照運算子的優先順序從高到低的順序進行

           優先順序相同的運算子按照事先約定的結合方向進行

運算式的結合方向和優先順序

 

java第二章 變數和運算子

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.