Java基础语法——运算符与表达式
目錄
Eclipse下載 安裝 使用
運算符
鍵盤錄入
Eclipse下載 安裝 使用
- Eclipse的概述(磨刀不誤砍柴工)——是一個IDE(集成開發環境)
- Eclipse的特點描述
??? ? ? ? (1)免費
? ? ? ? (2)純Java語言編寫
? ? ? ? (3)免安裝
? ? ? ? (4)擴展性強??
- 下載和安裝
????????(1)下載 The Community for Open Innovation and Collaboration | The Eclipse Foundation
????????(2)安裝? 綠色版? 解壓就可以使用(Eclipse)??
①按照上述網址進入下列網址:
??
②點擊Download,再進入系列界面
??
③下載下列安裝包
??
④點擊下載進入下列界面,是一個捐錢界面,無需理會,不是Eclipse的軟件付費界面,Eclipse是免費的軟件。(可以使用360瀏覽器下載,有迅雷加速,谷歌瀏覽器下載的可慢了)
??
⑤解壓并且安裝
??
什么是工作區?——工作區可以比作房子,在工作區里邊可以建立好多項目,項目又可以比作房子里邊的家具
Eclipse的基本使用
選擇工作空間——–其實就是我們寫的源代碼所在的目錄
用Eclipse來完成一個HelloWorld案例
(1)–代碼以項目為基本單位
(2)–創建項目
(3)–創建包
(4)–創建類
(5)–編寫代碼
(6)–編譯
(7)–運行
其項目的創建實現如下:
package com.demo;public class HelloWorld {public static void main(String[] args) {// TODO Auto-generated method stubSystem.out.println("HelloWorld");}}??
關于Eclipse的小技巧:
(1)如果不小心把Console關掉,怎么辦?
點擊工作區的Window-Show View-Console
??
(2)如果我們把所有的工作區都關掉,應該怎么辦?
點擊工作區Window-Perspective-Reset Perspective
??
(3)字體的大小和顏色修改
Window-Preference-Appearabce-Colors and Fonts-basic-Text Font
??? ?(4)行號的顯示
點擊右鍵,Show Line Numbers
??
(5)自動保存和編譯
工作區Project-Build Automatically,不打勾將不會自動保存
?
(6)如何導入別人做的工程?、
右鍵import-General-Existing Projects into Workspace
運算符
運算符——–對常量和變量進行操作的符號稱為運算符
表達式
??(1)用運算符把常量或者變量連接起來符合java語法的式子就可以稱為表達式。不同運算符連接的式子體現的是不同類型的表達式。
?(2)定義兩個int類型的變量a,b,做加法(a + b)
常用運算符
?(1)算術運算符
?(2)賦值運算符
?(3)關系運算符
?(4)邏輯運算符
?(5)三元運算符
一、算術運算符
eg:代碼:(1.2.3案例代碼說明)
// 定義了一個包 package com.yunsuanfu;// 定義類 public class Yunsuanfu {/*** Alt+/快捷鍵能夠快速的幫助寫出代碼* 按住Crtl+鼠標左鍵,可以快速定位到對應的變量、方法或者其他的類*/public static void main(String[] args) {//加法int c = add(1,2);System.out.println(c);//減法float d = substract(100.2f,50.1f);System.out.println(d);//乘法// 這里因為乘法那個函數不是靜態的,我們要寫入靜態函數,需要加這一句話,沒有static修飾符的,相當于一個動態的方法,首先我們需要將一個類new一個對象Yunsuanfu yunsuanfu = new Yunsuanfu();int e = yunsuanfu.multiply(5,6);System.out.println(e);//除法,上邊已經new了,我們這里可以直接調用的float f = yunsuanfu.divide(100.0f, 3.0f);System.out.println("除法:"+f);//整數除法int h = yunsuanfu.divide(10, 3);System.out.println("整數除法:"+h);//取余long g = yunsuanfu.mod(10, 3);System.out.println(g);;}/***兩個整數相加*@parameter a*@parameter b*@return*/public static int add(int a,int b) {int c = a+b;return c;}/*** 減法*/public static float substract(float a,float b) {float c = a - b;return c;}/*** 乘法*/public int multiply(int a,int b) {int c = a * b;return c;}/*** 除法*/public float divide(float a,float b) {float c = a/b;return c;}/*** 整數除法*/public int divide(int a,int b) {int c = a/b;return c;}/*** 取余*/public long mod(long a,long b) {long c = a%b;return c;} }eg 代碼(4,5案例代碼說明)
package com.yunsuanfu; /*** 自增和自減* @author 無限囂張(菜菜)**/ public class SelfAddSubstract {public static void main(String[] args) {// TODO Auto-generated method stubSelfAddSubstract selfAddSubstract = new SelfAddSubstract();int i =10;System.out.println("i初始值:"+i);System.out.println("i自增后"+selfAddSubstract.selfAdd(i));System.out.println("i初始值"+i);System.out.println("i自減后:"+selfAddSubstract.selfSubstract(i));}/*** 自增*/public int selfAdd(int j) {++j;return j;}/*** 自減*/public int selfSubstract(int k) {--k;return k;} }?i++和++j的區別(一般用在循環里)
i++放在后邊,先調用他的值,再加1,++j放在前邊,是先加1再運算
package com.yunsuanfu;/*** 自增的兩種形式* @author 無限囂張(菜菜) */ public class Self1 {public static void main(String[] args) {int i = 10;//++放在后面的時候先調用他的值再加1//i = i+1;System.out.println(i++);int j = 10;//++放在前面,先加1,再運算System.out.println(++j);}}二、字符和字符串參與+運算
?字符參與運算
? ? –其實是拿該字符對應的數值來操作(unicode碼)
? ? –‘a’? 97
? ? –‘A’? 65
? ? –‘0’? 48
?字符串參與運算
? ? –這里其實做的不是加法運算,而是字符串拼接。
? ? –字符串和其他類型的數據做拼接,結果是字符串類型的。
代碼演示:
package com.yunsuanfu; /*** 字符運算* @author 無限囂張(菜菜)**/ public class CharDemo {public static void main(String[] args) {char a='a';char b='1';System.out.println(a>b);}}字符串拼接
代碼演示
package com.yunsuanfu; /*** 字符串加法,字符串拼接* @author 無限囂張(菜菜)**/ public class StringAddDemo {public static void main(String[] args) {String a = "我";String b = "是";String c = "程序員";System.out.println(a+b+c+"!");}}?賦值運算符
- 基本的賦值運算符:=
- 擴展的賦值運算符:+=,-=,*=,/=,…
代碼演示
package com.yunsuanfu; /*** 擴展運算符* @author 無限囂張(菜菜)**/ public class Zhangfei {public static void main(String[] args) {// TODO Auto-generated method stubint i = 10;int j = i +1;j += 1; //相當于j = j+1;System.out.println(j);}}關系運算符
- ==,!=,>,>=,<,<=
- 關系運算符的結果都是boolean型,也就是要么是true,要么是false。
- 注意事項
? ? ? ? ? ? ?–關系運算符“==”不能誤寫成“=” 。
代碼演示
package com.yunsuanfu; /*** Eclipse小技巧* Ctrl+shift+F 格式化代碼* @author 無限囂張(菜菜)**/ public class GuanXiYunSanFu {public static void main(String[] args) {// TODO Auto-generated method stubint a = 1;int b = 2;System.out.println("a==b:?"); // 字符串不能和true和false做拼接System.out.println(a==b);System.out.println("a<=b:?");System.out.println(a<=b);}}邏輯運算符(比較重要,也比較燒腦,多練習)
- 邏輯運算符用于連接布爾型表達式,在Java中不可以寫成3<x<6,應該寫成x>3 && x<6 。
- &,|,^,!
- &&,||
- “&”和“&&”的區別:
????????單&時,左邊無論真假,右邊都進行運算;
????????雙&時,如果左邊為真,右邊參與運算,如果左邊為假,那么右邊不參與運算。
????????“|”和“||”的區別同理,雙或時,左邊為真,右邊不參與運算。
代碼演示
package com.yunsuanfu;/*** Eclipse小技巧 Ctrl+shift+F 格式化代碼* Eclipse小技巧 Ctrl+shift+/ 注釋多行代碼* @author 無限囂張(菜菜)**/ public class GuanXiYunSanFu {public static void main(String[] args) {// TODO Auto-generated method stub/** int a = 1; int b = 2; System.out.println("a==b:?"); // 字符串不能和true和false做拼接* System.out.println(a==b); System.out.println("a<=b:?");* System.out.println(a<=b);*/boolean a = true;boolean b = false;boolean c = true;boolean d = false;/*** 單與*/System.out.println("***********************************************");System.out.println(a&b); //看兩個是不都是true,都是true,返回true,否則返回falseSystem.out.println(a&c); //看兩個是不都是true,都是true,返回true,否則返回falseSystem.out.println(b&c); //看兩個是不都是true,都是true,返回true,否則返回falseSystem.out.println(b&d); //看兩個是不都是true,都是true,返回true,否則返回false/*** 雙與*/System.out.println("***********************************************");System.out.println(a&&b); //判斷第一個,如果是true,再判斷第二個,如果是false,直接返回false,如果是true,返回trueSystem.out.println(a&&c); //判斷第一個,如果是true,再判斷第二個,如果是false,直接返回false,如果是true,返回trueSystem.out.println(b&&c); //判斷第一個,如果是true,再判斷第二個,如果是false,直接返回false,如果是true,返回trueSystem.out.println(b&&d); //判斷第一個,如果是true,再判斷第二個,如果是false,直接返回false,如果是true,返回true/*** 單或;除非兩個都是false,才返回false,否則返回true*/System.out.println("***********************************************");System.out.println(a|b); System.out.println(a|c); System.out.println(b|c); System.out.println(b|d); /*** 雙或;有一個true,返回true*/System.out.println("***********************************************");System.out.println(a||b); System.out.println(a||c); System.out.println(b||c); System.out.println(b||d); /*** 異或;當兩個相同返回false,不同返回true*/System.out.println("***********************************************");System.out.println(a^b); System.out.println(a^c); System.out.println(b^c); System.out.println(b^d); /***非*返回的是相反的*/System.out.println("***********************************************");System.out.println(!a); System.out.println(!b); System.out.println(!c); System.out.println(!d); }}三元運算符
格式
? ? ?–(關系表達式)?表達式1:表達式2;
? ? –如果條件為true,運算后的結果是表達式1;
? ? –如果條件為false,運算后的結果是表達式2;
示例:
? ? ?獲取兩個數中大數。
? ? int x=3,y=4,z;
? ? z = (x>y)?x:y;//z變量存儲的就是兩個數的大數。
代碼演示
package com.yunsuanfu;public class Sanyuan {public static void main(String[] args) {// TODO Auto-generated method stubint x = 3;int y = 4;//int z = (x>y)?x:y;int z;if(x>y) {z = x;}else {z = y;}System.out.println(z);}}鍵盤錄入
- 鍵盤錄入數據概述
? ? ? ?我們目前在寫程序的時候,數據值都是固定的,但是實際開發中,數據值肯定是變化的,所以,把數據改進為鍵盤錄入,提高程序的靈活性。
- 如何實現鍵盤錄入數據呢?(目前先記住使用)
代碼演示
package com.demo;import java.util.Scanner;/** 引包的快捷鍵:Ctrl+shift+O* 為了提高程序的靈活性,我們把數據改為鍵盤錄入* 如何實現鍵盤錄入呢?目前使用JDK提供的Scanner.* 使用步驟,記住即可使用步驟A:導包import java.util.Scanner;類中的順序:package > import > classB:創建對象Scanner sc = new Scanner(System.in);C:接受數據int i = sc.nextInt();*/public class ScannerDemo {public static void main(String[] args) {//創建鍵盤錄入數據Scanner sc = new Scanner(System.in);//接受數據System.out.println("請錄入一個整數:");int i = sc.nextInt();//輸出數據System.out.println("i:"+i);} }鍵盤錄入數據練習
1.鍵盤錄入兩個數據,并對這兩個數據求和,輸出其結果
package com.demo;import java.util.Scanner;/** 鍵盤錄入兩個數據,并對這兩個數據求和,輸出其結果* * 鍵盤錄入* A:導包* B:創建對象* C:接受數據*/ public class ScannerTest {public static void main(String[] args) {// 創建對象Scanner sc = new Scanner(System.in);// 接收數據System.out.println("請輸入第一個數據:");int a = sc.nextInt();System.out.println("請輸入第二個數據");int b = sc.nextInt();// 對數據進行求和int sum = a + b;System.out.println("sum:" + sum);} }?2.鍵盤錄入兩個數據,獲取這兩個數據中的最大值
package com.demo;import java.util.Scanner;/** 鍵盤錄入兩個數據,獲取這兩個數據中的最大值* * 鍵盤錄入* A:導包* B:創建對象* C:接受數據*/ public class ScannerTest {public static void main(String[] args) {// 創建對象Scanner sc = new Scanner(System.in);// 接收數據System.out.println("請輸入第一個數據:");int a = sc.nextInt();System.out.println("請輸入第二個數據");int b = sc.nextInt();//獲取這兩個數據中的最大值int z;if(a>b) {z = a;}else {z = b;}System.out.println("z:" + z);} }3.?鍵盤錄入兩個數據,比較這兩個數據是否相等
package com.demo;import java.util.Scanner;/** 鍵盤錄入兩個數據,比較這兩個數據是否相等* * 鍵盤錄入* A:導包* B:創建對象* C:接受數據*/ public class ScannerTest {public static void main(String[] args) {// 創建對象Scanner sc = new Scanner(System.in);// 接收數據System.out.println("請輸入第一個數據:");int a = sc.nextInt();System.out.println("請輸入第二個數據");int b = sc.nextInt();//獲取這兩個數據中的最大值boolean z;if(a==b) {z = true;}else {z = false;}System.out.println("z:" + z);} }4.鍵盤錄入三個數據,獲取這三個數據中的最大值
package com.demo;import java.util.Scanner;/** 鍵盤錄入三個數據,獲取這三個數據中的最大值* * 鍵盤錄入* A:導包* B:創建對象* C:接受數據*/ public class ScannerTest3 {public static void main(String[] args) {// 創建對象Scanner sc = new Scanner(System.in);// 接收數據System.out.println("請輸入第一個數據:");int a = sc.nextInt();System.out.println("請輸入第二個數據");int b = sc.nextInt();System.out.println("請輸入第三個數據");int c = sc.nextInt();//獲取這三個數據中的最大值//?����?int temp = (a > b ? a : b);int max = (temp > c ? temp : c);System.out.println("max:" + max);} }?
?
總結
以上是生活随笔為你收集整理的Java基础语法——运算符与表达式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机引导原理,计算机启动原理与多重引导
- 下一篇: Java转Kotlin