>[success] # 算數運輸符
1. java 運算符 `+` `-` `*` `/` `%`,依次表示
1.1. \+ 表示加法運算符
1.2. \- 表示減法運算符
1.3. \* 表示乘法運算符
1.4. / 表示除法運算符
1.5. % 表示取模/取余運算符
2. `ia+ib`這個整體叫做表達式 `ia、ib`叫做操作數 `+`叫做操作符/運算符
>[danger] ##### java 注意事項
* `溢出` 當相操作的兩個值,計算結果超出了范圍,就會產生溢出,而溢出不會出錯,以下面案例來說兩個`int` 相加后超過了其自身的四個字節存儲空間,因此得到了一個不準確值,具體步驟可以參考 `java 類型轉換` 章節
~~~
public class Main {
public static void main(String[] args) {
int x = 2147483640;
int y = 15;
int sum = x + y;
System.out.println(sum); // -2147483641
}
}
~~~
* 當兩個整數相除時結果只保留整數部分,丟棄小數部分,以下面案例為例`5/2` 得到結果為`2`
~~~
public class VarTest{
public static void main(String[] args){
int a = 5;
int b = 2;
System.out.println(a/b); // 2
}
}
~~~
* * 解決方法一將其中一個數變為非整數使用強制類型轉換為double類型再運算即可
* * 解決方法二讓其中一個操作數乘以1.0即可(推薦)
* 總結:**整數相除結果只能得到整除,如果結果想要是小數,必須要有小數參數**
`注意:`int 和double 相除是小類型
~~~
public class VarTest{
public static void main(String[] args){
int a = 5;
int b = 2;
System.out.println(a/b); // 2
// 解決方法
System.out.println((double)a/b); // 2.5
System.out.println(a/(double)b); // 2.5
System.out.println((double)a/(double)b); // 2.5
// 處理方式二:讓其中一個操作數乘以1.0即可(推薦)
System.out.println(a*1.0/b); // 2.5
}
}
~~~
* 0不能作除數,但如果`0.0` 作為除數,被除數非`0`結果為`Infinity `,如果為0結果為`NaN
`
~~~
public class VarTest{
public static void main(String[] args){
//System.out.println(5 / 0); // 編譯ok,運行發生java.lang.ArithmeticException(算術異常 記住): / by zero
System.out.println(5 / 0.0); // Infinity 無窮
System.out.println(0 / 0.0); // NaN
}
}
~~~
>[danger] ##### 數值拆分
獲取任意一個數上每一位數。
個位:數字 % 10
十位:數字 / 10 % 10
百位:數字 / 100 % 10
千位:數字 / 1000 % 10
*****
鍵盤錄入一個三位數,將其拆分為個位、十位、百位后,打印在控制臺
~~~
import java.util.Arrays;
import java.util.Scanner;
public class GetNumber {
public static void main(String[] args) {
// 獲取鍵盤輸入
Scanner sc = new Scanner(System.in);
System.out.println("請輸入要拆解的數字");
int number = sc.nextInt();
// 利用 10 取余數獲取個位
int ones = number % 10;
int tens = number / 10 % 10; // 縮小十倍去掉剛才個位重新獲取
int hundreds = number / 100 % 10; // 縮小100倍去掉剛才 十位和個位
System.out.println("個位" + ones + '\t' + "十位" + tens + '\t' + "百位" + hundreds);
// ----------- 任何數計算---------------
int len = String.valueOf(number).length();
int flag = 1;
int[] ls = new int[len];
for (int i = 1; i <= len; i++) {
int currentEndNum = number / flag % 10;
flag *= 10;
ls[i - 1] = currentEndNum;
}
System.out.println(Arrays.toString(ls));
}
}
~~~
>[danger] ##### 將用戶輸入的秒轉換成,出x小時x分x秒展現形式
~~~
import java.util.Scanner;
public class VarTest{
public static void main(String[] args){
// 提示用戶輸入要轉換的秒數
System.out.println("請輸入要轉換的秒");
// 獲取用戶鍵盤輸入
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
// 將秒數轉換為時分秒形式
int hour = num / 3600; // 兩個整數相除等于整數
int min = num % 3600 / 60; // 除以3600 余出來的就是分鐘
int sec = num % 60; // 除以分鐘余出來的就是秒
System.out.println(hour + "小時" + min + "分鐘" + sec + "秒");
}
}
~~~
- windows -- 環境變量
- Vscode -- 編寫java
- 初始java
- java -- 關鍵字
- 編寫第一個java程序
- java -- 注釋
- 計算機存儲 -- 進制
- java -- 類型
- java -- 變量
- 數字類型
- 布爾類型
- 字符類型
- 類型轉換
- 雙等比較是什么
- java -- 運算符
- 算數運算符
- 字符串拼接
- 關系/比較運算符
- 自增減運算符
- 邏輯運算符
- 三目運算
- 賦值運算符
- 移位運算符
- 位運算符
- 運算符優先級
- java -- 流程控制語句
- if /else if /if -- 判斷
- switch case分支結構
- for -- 循環
- 用雙重for循環
- while -- 循環
- do while -- 循環
- 案例練習
- java -- 數組
- 數組的存儲
- 數組的增刪改查
- 數組的特點
- 數組案例
- 二維數組
- 數組的工具方法
- java -- 方法
- java -- 方法的重載
- java -- 方法的調用流程
- java -- 類方法傳參注意事項
- java -- 方法練習案例
- 對比 return break continue
- for each循環
- java -- 基礎練習
- java -- 面向對象
- java -- 創建類和對象
- java -- 訪問控制符
- java -- 類成員方法
- java -- 構造方法
- java -- this
- java -- 封裝
- java -- 對象內存圖
- java -- 創建對象案例
- java -- static
- java -- 繼承
- super -- 關鍵字
- java -- 構造塊和靜態代碼塊
- java -- 重寫
- java -- final
- java -- 多態
- java -- 抽象類
- java -- 接口
- 引用類型數據轉換
- 綜合案例
- java -- 內部類
- java -- 回調模式
- java -- 枚舉類型
- java -- switch 使用枚舉
- java -- 枚舉方法使用
- java -- 枚舉類實現接口
- java -- javaBean
- java -- package 包
- java -- import
- java -- 遞歸練習
- java -- 設計模式
- 單例模式
- java -- 注解
- java -- 元注解
- Java -- 核心類庫
- java -- 處理字符串
- Java -- String
- String -- 常用方法
- String -- 正則
- Java -- StringBuilder 和 StringBuffer
- 知識點
- Java -- StringJoiner 字符串拼接
- 練習題
- 字符串的總結
- Java -- 包裝類
- Integer
- Double
- Boolean
- Character
- java -- 集合類
- java -- util.Collection
- Iterator接口
- java -- util.List
- java -- ArrayList
- java -- util.Queue
- java -- util.Set
- java -- util.Map
- java -- util.Collections
- Java -- Math
- Java -- java.lang
- Java -- Object
- Java -- 獲取當前時間戳
- Java -- 異常
- Java -- java.util
- java -- Date
- java -- Calender
- Java -- java.text
- Java -- SimpleDateFormat
- Java -- java.time
- Java -- java.io
- java -- io.File
- java -- 泛型
- IDEA -- 用法