零基礎學習java:變 量(一),基礎java

來源:互聯網
上載者:User

零基礎學習java:變 量(一),基礎java
 

一、變數的概念:

(1)記憶體中的一個儲存地區

(2)該地區有自己的名稱(變數名)和類型(資料類型)

(3)Java中每個變數必須先聲明,後使用

(4)該地區的資料可以在同一類型範圍內不斷變化 

使用變數注意:

(1)變數的範圍:一對{ }之間有效 

(2)初始化值 

定義變數的格式:資料類型    變數名  =  初始化值

二、變數的分類——按資料類型

對於每一種資料都定義了明確的具體資料類型,在記憶體中分配了不同大小的記憶體空間。

 

1、整數類型:byte、short、int、long

Java各整數類型有固定的表數範圍和欄位長度,不受具體OS的影響,以保證java程式的可移植性。

java的整型常量預設為 int 型,聲明long型常量須後加‘l’或‘L’

 

 

2、浮點類型:float、double

(1)與整數類型類似,Java 浮點類型也有固定的表數範圍和欄位長度,不受具體OS的影響

(2)Java 的浮點型常量預設為double型,聲明float型常量,須後加‘f’或‘F’。

(3)浮點型常量有兩種表示形式:

    十進位數形式:如:5.12       512.0f        .512  (必須有小數點)

    科學計數法形式:如:5.12e2      512E2    100E-2

 

 

3、字元類型:char

char 型資料用來表示通常意義上“字元”(2位元組)

字元型常量的三種表現形式:

(1)字元常量是用單引號(‘’)括起來的單個字元,涵蓋世界上所有書面語的字元。例如:char c1 = 'a';   char c2 = '中'; char c3=  '9';

(2)Java中還允許使用逸出字元‘\’來將其後的字元轉變為特殊字元型常量。例如:char c3 = ‘\n’;  // '\n'表示分行符號

(3)直接使用 Unicode值來表示字元型常量:‘\uXXXX’。其中,XXXX代表一個十六進位整數。如:\u000a表示\n。

(4)char類型是可以進行運算的。因為它都對應有Unicode碼

4、字元編碼

(1)ASCII 碼

在電腦內部,所有資料都使用二進位表示。每一個二進位位(bit)有 0 和 1 兩種狀態,因此 8 個二進位位就可以組合出 256 種狀態,這被稱為一個位元組(byte)。一個位元組一共可以用來表示 256 種不同的狀態,每一個狀態對應一個符號,就是 256 個符號,從 0000000 到 11111111。 

ASCII碼:上個世紀60年代,美國制定了一套字元編碼,對英語字元與二進位位之間的關係,做了統一規定。這被稱為ASCII碼。ASCII碼一共規定了128個字元的編碼,比如空格“SPACE”是32(二進位00100000),大寫的字母A是65(二進位01000001)。這128個符號(包括32個不能列印出來的控制符號),只佔用了一個位元組的後面7位,最前面的1位統一規定為0。

 

(2)Unicode編碼

亂碼:世界上存在著多種編碼方式,同一個位元字可以被解釋成不同的符號。因此,要想開啟一個文字檔,就必須知道它的編碼方式,否則用錯誤的編碼方式解讀,就會出現亂碼

 

Unicode:一種編碼,將世界上所有的符號都納入其中。每一個符號都給予一個獨一無二的編碼,使用 Unicode 沒有亂碼的問題。

 

Unicode 的缺點:Unicode 只是一個符號集,它只規定了符號的二進位代碼,卻沒有規定這個二進位代碼應該如何儲存:無法區別Unicode和ASCII:電腦無法區分三個位元組表示一個符號還是分別表示三個符號。

(3)UTF-8:

UTF-8 是在互連網上使用最廣的一種 Unicode的實現方式。

UTF-8 是一種變長的編碼方式。它可以使用 1-6 個位元組表示一個符號,根據不同的符號而變化位元組長度。

UTF-8的編碼規則:

  對於單位元組的UTF-8編碼,該位元組的最高位為0,其餘7位用來對字元進行編碼(等同於ASCII碼)。

  對於多位元組的UTF-8編碼,如果編碼包含 n 個位元組,那麼第一個位元組的前n 位為1,第一個位元組的第 n+1 位為0,該位元組的剩餘各位用來對字元進行編碼。在第一個位元組之後的所有的位元組,都是最高兩位為"10",其餘6位用來對字元進行編碼。 

 

5、布爾類型:boolean

boolean 類型適於邏輯運算,一般用於程式流程式控制制

if條件控制語句

while迴圈控制語句

do-while迴圈控制語句;

for迴圈控制語句 

boolean類型資料只允許取值true和false,無null。

不可以0或非 0 的整數替代false和true,這點和C語言不同

案例

//變數:基礎資料型別 (Elementary Data Type)(8個) vs 引用資料類型(類、介面、數組)

//1.java中的變數定義的格式:資料類型 變數名 = 初始化值

class TestVeriable {

    publicstaticvoid main(String[] args) {

       //2.變數得先定義,後使用

       int myInt1 = 10;

       double d = 12.3;

      

       System.out.println(myInt1);

        System.out.println(myInt1 + d);

       //i1超出了其作用的範圍,不可使用。

       //System.out.println(i1);

 

       //3.整型:byte(-128~+127)  short int(預設類型) long

       byte b1 = 12;

       //byte b2 = 128;

       short s1 = 128;

       int i1 = 12;

       //定義long型變數,值的末尾加“L”或“l”

       long l1 = 2134123351345325L;

       System.out.println(l1);

 

       //4.浮點型(帶小數點的數值):float   double(預設類型)

       double d1 = 12.3;

       //聲明float類型的浮點型資料,末尾要加“F”或者“f”

       float f1 = 12.3F;

       System.out.println(f1);

 

       //5.字元型(=兩個位元組):char 只能表示一個字元(英文、中文、標點符號、日文、。。。)

       char c1 = 'a';

       //char c2 = 'ab';

       String str = "ab";

       char c3 = '中';

       String str1 = "中國";

       //可以表示逸出字元

       char c4 = '\t';

       char c5 = '\n';

       System.out.println("abc" + c5 + "def");

       //瞭解

       char c6 = '\u1234';

       System.out.println(c6);

 

       //6.布爾類型:boolean  只能夠取值為true 或 false 。不能取值null

       boolean bool1 = true;

       if(bool1){

           System.out.println("今天是周五");

       }else{

           System.out.println("今天明明是周六!");

       }

 

    }

 

    publicvoid method1(){

       int i1 = 10;

       System.out.println(i1);

    }

}

尚學堂讓你零基礎學習JAVA不用愁,帶你進入IT這個神奇的世界!

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.