1. 程式人生 > 其它 >java入門第一章之基本語法

java入門第一章之基本語法

技術標籤:萌新入門java

命名的基本規範:

識別符號:

Java 對各種 變數 方法 等要素命名時使用的字元序列稱為識別符號 技巧:凡是自己可以起名字的地方都叫識別符號

定義合法識別符號規則:-->不遵守編譯無法通過

1.由26個英文字母大小寫,0-9 ,_或 $ 組成 2.數字不可以開頭。 3.不可以使用關鍵字和保留字,但能包含關鍵字和保留字。 4.Java中嚴格區分大小寫,長度無限制。 5.識別符號不能包含空格

Java中的名稱命名規範:-->類似於行業準則吧,不遵守也能編譯通過

包名 :多單片語成時所有字母都小寫:
xxxyyyzzz 類名、介面名 :多單片語成時,所有單詞的首字母大寫: XxxYyyZzz(駝峰寫法) 變數名、方法名 :多單片語成時,第一個單詞首字母小寫,第二個單詞開始每個 單詞首字母大寫:xxxYyyZzz(小駝峰) 常量名 :所有字母都大寫。多單詞時每個單詞用下劃線連線: XXX_YYY_ZZZ

注意1:在起名字時,為了提高閱讀性,要儘量有意義,“見名知意”。

注意2java採用unicode字符集,因此識別符號也可以使用漢字宣告,但是不建議使用

變數:

使用變數注意:

1.Java 中每個變數必須先宣告,後使用 2.使用變數名來訪問這塊區域的資料
3.變數的作用域:其定義所在的一對 { } 4.變數只有在其作用域內才有效 5.同一個作用域內,不能定義重名的變數

宣告變數

語法: < 資料型別 > < 變數名稱 > 例如: int var;

變數的賦值

語法: < 變數名稱 > = < > 例如: var = 10;

宣告和賦值變數

語法: < 資料型別 > < 變數名 > = < 初始化值 > 例如: int var = 10; 在方法體外,類體內宣告的變數稱為
成員變數 在方法體內部宣告的變數稱為 區域性變數 成員變數: 1. 例項變數(不以 static 修飾) 2.類變數(以 static 修飾) 區域性變數: 1.形參(方法、構造器中定義的變數) 2.方法區域性變數(在方法內定義) 3.程式碼塊區域性變數(在程式碼塊內定義) 注意:二者在初始化值方面的異同 : 同: 都有生命週期 異: 區域性變數除形參外,需顯式初始化

基本資料型別:

整數型別:byte(1位元組)、short(2位元組)、int(4位元組)、long(8位元組)

java的整型常量預設為 int 型,宣告long型常量須後加‘l’或‘L’ 。不加也不會報錯,但實際上為int型,當超過int型的上限時會編譯錯誤。 java程式中變數通常宣告為int型,除非不足以表示較大的數,才使用long
1 public class VariableTest {
2     public static void main(String[] args) {
3         int number1;
4         number1 = 10;
5 
6         int number2;
7         number2 = 20;
8 
9         int number3;
10         number3 = number1 + number2;
11         System.out.println("Number3 = " + number3);
12 
13         int number4 = 50;
14         int number5 = number4 - number3;
15         System.out.println("Number5 = " + number5);
16     }
17 }

浮點型別:float(4位元組)、double(8位元組)

Java 的浮點型常量預設為double型,宣告float型常量,須後加‘f’或‘F’。不加f必報錯。

字元型別:char(2位元組)

char型別是可以進行運算的。因為它都對應有Unicode碼。char c = ''是錯誤的,char型別不能為空,但可以加空格。

布林型別:boolean

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

基本資料型別轉換:

只討論七種基本資料型別的變數間的運算,不包含boolean型別

1.自動提升型別

容量小的型別自動轉換為容量大的資料型別。資料型別按容量大小排序為:

byte --> short --> int --> long --> float --> double

此時的容量大小是指,表示數的範圍大小,例如float大於long的容量

2.有多種型別的資料混合運算時,系統首先自動將所有資料轉換成容量最大的那種資料型別,然後再進行計算。

3.byte,short,char之間不會相互轉換,他們三者在計算時首先轉換為int型別,並且都用int型別來接收。

4.boolean型別不能與其它資料型別運算。 5.當把任何基本資料型別的值和字串(String)進行連線運算時(+),基本資料類 型的值將自動轉化為字串(String)型別。

2.強制型別轉換:自動型別提升的逆運算

自動型別轉換的逆過程,將容量大的資料型別轉換為容量小的資料型別。使

1.用時要加上強制轉換符:(),但可能造成精度降低或溢位,格外要注意。

2.通常,字串不能直接轉換為基本型別,但通過基本型別對應的包裝類則可以實現把字串轉換成基本型別。 如: String a = “43”; int i = Integer.parseInt(a);

3.boolean型別不可以轉換為其它的資料型別。

4.強制型別轉換是截斷操作,浮點型轉整型是直接去除小數部分,不會四捨五入,會損失精度。

5.整型常量預設為int型,浮點型常量預設為double型。例如1就是int型

//判斷是否能通過編譯 :
short s = 5;
s = s-2; //判斷:no

byte b = 3;
b = b + 4; //判斷:no
b = (byte)(b+4); //判斷:yes

char c = ‘a’;
int i = 5;
float d = .314F;
double result = c+i+d; //判斷:yes

byte b = 5;
short s = 3;
short t = s + b; //判斷:no

//判斷有無精度損失
double d = 12.9;
int i = (int)d; // 有損失,12

long li = 123;
short s = (short)li; // 無損失

int i = 128;
byte  b = (byte)i;  // -128

字串型別:String

String 不是基本資料型別,屬於引用資料型別,翻譯為:字串。 使用方式與基本資料型別一致。例如: String str = “abcd”;用一對“”來賦值。引號中可以為空。 一個字串可以串接另一個字串,也可以直接串接其他型別的資料,並且只能是連線運算+。例如: str = str + “xyz” ; int n = 100; str = str + n;
String str1 = 4; //判斷對錯:no

String str2 = 3.5f + “”; //判斷str2對錯:yes

System.out.println(str2); //輸出:”3.5”

System.out .println(3+4+“Hello!”); //輸出:7Hello!

System.out.println(“Hello!”+3+4); //輸出:Hello!34

System.out.println(‘a’+1+“Hello!”); //輸出:98Hello!

System.out.println(“Hello”+‘a’+1); //輸出:Helloa1



System.out.println("*    *");//*    *

System.out.println('*'+'\t'+'*');//93

System.out.println('*'+"\t"+'*');//*    *

System.out.println('*'+'\t'+"*");//51*

System.out.println('*'+('\t'+"*"));//*    *

進位制與進位制間的轉換:

所有數字在計算機底層都以 二進位制 形式存在,對於整數,有四種表示方式: 二進位制 (binary) 0,1 ,滿 2 1. 0b 0B 開頭。 二進位制的整數有如下三種形式: 原碼 :直接將一個數值換成二進位制數。最高位是符號位 負數的反碼 :是對原碼按位取反,只是最高位(符號位)確定為 1 負數的補碼 :其反碼加 1 計算機以二進位制 補碼 的形式儲存所有的整數。 正數的原碼、反碼、補碼都相同 負數的補碼是其反碼+1 十進位制 (decimal) 0-9 ,滿 10 1 八進位制 (octal) 0-7 ,滿 8 1. 以數字 0 開頭 表示。 十六進位制 (hex) 0-9 A-F ,滿 16 1. 0x 0X 開頭 表示。此處的 A-F 不區分大小寫。 如:0x21AF +1= 0X21B0 二進位制轉八進位制 ,從右開始,每三個合併一個。 二進位制轉十六進位制 ,從右開始,每四個合併一個。