Java中的程式可以分爲結構定義語句和功能執行語句。
作用 | 關鍵字 |
---|---|
用於定義數據型別的關鍵字(12) | class、interface、enum、byte、short、int、long、float、double、char、boolean、void |
用於定義數據型別值的關鍵字 | true、false、null |
用於定義流程控制的關鍵字 | if、else、switch、case、default、while、do、for、break、continue、return |
新建class Demo01
package com.hpe.demo;
public class Demo01 {
/**
* 什麼是常數?程式執行期間,固定的值是不可以改變的
*/
public static void main(String[] args) {
//整數
System.out.println(100);
//字串
System.out.println("我愛學習");
//小數
System.out.println(2.12);
//布爾
System.out.println(true);
//字元
//System.out.println('');//字元必須要有內容
System.out.println('a');
}
}
變數的概念:在記憶體中的一塊區域,變數的值可以在某一個範圍內發生變化。
變數型別 變數名;int num;
變數型別 變數名; int num=10;
變數型別 變數名【=初始值】
①變數型別決定了變數的數據性質、範圍、儲存在記憶體中所佔的位元組數以及可以進行的合法操作
②變數名必須是一個合法的識別符號
③【】中的內容是可選項,即在定義變數的同時可以對該變數進行初始化賦值。
整數型別有byte(1位元組)、short(2位元組)、int(4位元組)、long(8位元組)
Java的整形常數預設爲int,宣告long型常數必須後面加’l’或’L’
浮點型別有float(4位元組)、double(8位元組)
Java的浮點型常數的預設爲double型,宣告float型常數的時候,後面必須加上’f’或’L’
boolean 常用在邏輯運算
char
1.成員變數:定義在類的內部,方法之外,可以在當前類的內部使用
2.區域性變數:定義在方法內部,只能在當然方法內部使用
注意:靜態方法裏面只能呼叫靜態變數或者靜態方法
新建class Demo01
static int num=10;//成員變數
public static void main(String[] asrgs){
int num=10;//區域性變數
System.out.println(num);
}
新建class Demo02
1.整數
//byte -128-127
byte b=120;
System.out.println("B":+b);//b=128;右邊賦值的數位不能超過左邊數據型別的範圍
long l=1000L;//如果定義成long型別,後面必須加上「L」或「l」
System.out.porintln("l:"+l);
2.小數
double d=10;
Systm.out.println("d:"+d);
float f=12F;//float型別值的後面必須加上「f」或「F」
System.out.println("f:"+f);
3.字元型
char c='a';
System.out.println("c:"+c);
4.布爾型別(只有true和false)
boolean bo=true;
System.out.println("bo:"+bo);
分類:根據轉換方式不同,數據型別轉換分爲兩種:自動型別轉換、強制型別轉換、字串型別轉換
新建class Demo03
1.自動型別轉換
short s=10;
int num=s;//把小的(short)轉成大的(int),可以自動型別轉換
System.out.println("num:"+num);
2.強制型別轉換
強制型別轉換也叫顯式型別轉換,指的是兩種數據型別之間的轉換需要進行顯式宣告。當兩種型別不相容或者目標型取值範圍小於源型別時,自動型別轉換無法進行,這時候就需要強制型別轉換。
int num=10;
short s1=(short)num1;//把大的放到小的裏面需要強制型別轉換
System.out.println("s1:"+s1);
3.字串型別轉換
第一種:將字串轉換成int型別,轉換前提是字串的值中不能包含中文
String str="123";
//每一個基本數據型別都有自己對應的包裝類,每個包裝類裏面都封裝了對應的轉換方法
//Integer是int型別的包裝類
int num2=Integer.parseInt(str);//把字串轉換成int
第二種:將字串轉成double
String str1="456";
double dob=Double.parseDouble(str1);
4.整型轉換成字串
第一種:int型別轉換成字串——拼接字串
int num3=110;
String str2=num3+"";
第二種:int型別轉換成字元轉——String型別裏面找方法
int num4=112;
//轉成什麼型別就去對應的類裏面找方法
String str3=String.valueOf(num4);
寫法 | 釋義 |
---|---|
\r | 表示回車,將遊標定位到當前行的開頭,不會跳到下一行 |
\ n | 表示換行,換到下一行的開頭 |
\t | 表示製表符,將遊標移到下一個製表符的位置,就像在文件中用Tab鍵一樣 |
\ \ | 表示反斜槓跳脫字元 |
所謂的運算子就是用於告訴程式執行特定運算或邏輯操作的符號,主要包括算術運算子、比較運算子、邏輯運算子、條件運算子、賦值運算子號。
運算子 | 運算 |
---|---|
+ | 正號 |
- | 負號 |
+ | 加 |
- | 減 |
* | 乘 |
/ | 除(即算數中整數的結果) |
% | 取模(即算術中的求餘數) |
++ | 自增(前) |
++ | 自增(後) |
– | 自減(前) |
– | 自減(後) |
新建class Demo04
1.加
作用在數位上是求和,作用在字元上是字串拼接
2.前++(--)和後++(--)
注意:不配合語句,單獨使用的時候++num和num++沒有任何區別。
配合語句用:
++num 先加後用
num++ 先用後加
單獨使用:
int num=10;
++num;
System.out.println(num);
int num1=10;
num++;
System.out.println(num1);
混合使用:
int a=10;
System.out.println(++a);
int b=10;
System.out.println(b++);
練習01:
int d=10;
int e=10
int f=(++d)+(++d)+(d--)+(--e)+(e++)+(++e);
10+12+12+9+9+11
System.out.prinltn(f);
練習02:
int j=12;
int h=16;
int sum=(--j)+(h--)+(j++)+(++h)+(j--)+(++j);
11+16+11+16+12+12
System.out.println(sum);
新建 class Demo05
賦值運算子就是把右邊的值賦值給左邊的變數
運算子 | 解釋
-------- | -----
= | 不是相等的意思是賦值,==纔是相等的意思
+= | a=a+b可以簡寫成a+=b;
-= |
*= |
/= |
%= |
int a=10;
int b=10;
a+=b;
System.out.println(a);
比較運算子用來比較兩個數值或者是變數,其結果是布爾型別。比較運算子只能比較基本數據型別,因爲參照數據型別儲存的是地址值。
新建 class Demo06
注意:
比較運算子用來比較兩個變數,只是針對基本數據型別進行比較
如果用來比較參照數據型別結果永遠爲false
int a=10;
int b=30;
System.out.println(a!=b);
用於對布爾型別的值或表達式進行邏輯判斷的符號,返回值依舊是布爾型別。
運算子 | 釋義 |
---|---|
&(並且) | 所有條件爲true,返回true,其中一個爲false,就爲false |
(或者) | 只要有一個爲true就爲true,都爲false纔是false |
^(異) | 相同爲false,不同爲true |
!(非) | 本來是false改成true |
&& (短路與) | |
(短路或) |
邏輯運算子&和|可以雙寫——執行效率高
短路與如果左側爲false可以判斷最後的結果開了,那麼右邊的邏輯表達式就不會被執行了
短路或如果左側爲true,右側的邏輯表達式就不再執行了