數學處理類
Math類
基本概念
- java.lang.Math類主要用於提供執行數學運算的方法,如:對數,平方根。
常用方法
public class MathTest {
public static void main(String[] args) {
// static int max(int a, int b)
System.out.println("獲取兩個整數中最大值的結果是:" + Math.max(10, 20)); // 20
// static int min(int a, int b)
System.out.println("獲取兩個整數中最小值的結果是:" + Math.min(10, 20)); // 10
// static double pow(double a, double b)
System.out.println("獲取次方的結果是:" + Math.pow(2, 3)); // 8.0 返回第一個引數的冪,體現double型別
// static int abs(int a)
System.out.println("獲取絕對值的結果是:" + Math.abs(-5)); // 5
// static long round(double a)
System.out.println("進行四捨五入的結果是:" + Math.round(3.14)); // 3
// static double sqrt(double a)
System.out.println("該整數的平方根是:" + Math.sqrt(16)); // 4.0
// static double random()
System.out.println("生成的隨機數是:" + Math.random()); // 返回0.0到1.0的隨機數
}
}
BigDecimal類
基本概念
- 由於float型別和double型別在運算時可能會有誤差,若希望實現精確運算則藉助 java.math.BigDecimal型別加以描述。
常用方法
基礎知識:
- BigDecimal類裡面沒有在整數後面加 .0 體現小數的概念(見下方divide方法)
- 除不盡時要用RoundingMode.HALF_UP四捨五入(RoundingMode:舍入模式)
import java.math.BigDecimal;
import java.math.RoundingMode;
public class BigDecimalTest {
public static void main(String[] args) {
// 1.構造BigDecimal型別的兩個物件
// BigDecimal(String val)
BigDecimal bd1 = new BigDecimal("5.2");
BigDecimal bd2 = new BigDecimal("1.3");
// 2.使用構造完畢的物件實現加減乘除運算
System.out.println("實現加法運算的結果是:" + bd1.add(bd2)); // 6.5
System.out.println("實現減法運算的結果是:" + bd1.subtract(bd2)); // 3.9
System.out.println("實現乘法運算的結果是:" + bd1.multiply(bd2)); // 6.76
System.out.println("實現除法運算的結果是:" + bd1.divide(bd2)); // 4
System.out.println("---------------------------------------------------------------");
// 3.實現精確運算
System.out.println(0.1 + 0.2); // 0.30000000000000004
BigDecimal bd3 = new BigDecimal("0.1");
BigDecimal bd4 = new BigDecimal("0.2");
System.out.println("精確計算的結果是:" + bd3.add(bd4)); // 0.3
System.out.println("---------------------------------------------------------------");
// 4.注意事項
BigDecimal bd5 = new BigDecimal("2");
BigDecimal bd6 = new BigDecimal("0.3");
System.out.println("除法運算的結果是:" + bd5.divide(bd6, RoundingMode.HALF_UP)); // 7
}
}
BigInteger類
基本概念
- 若希望表示比long型別範圍還大的整數資料,則需要藉助java.math.BigInteger型別描述。
常用方法
import java.math.BigInteger;
public class BigIntegerTest {
public static void main(String[] args) {
// 1.構造兩個BigInteger型別的物件並指定初始值
BigInteger bi1 = new BigInteger("20");
BigInteger bi2 = new BigInteger("8");
// 2.實現加減乘除取餘操作並列印
System.out.println("實現加法運算的結果是:" + bi1.add(bi2)); // 28
System.out.println("實現減法運算的結果是:" + bi1.subtract(bi2)); // 12
System.out.println("實現乘法運算的結果是:" + bi1.multiply(bi2)); // 160
System.out.println("實現除法運算的結果是:" + bi1.divide(bi2)); // 2
System.out.println("實現取餘運算的結果是:" + bi1.remainder(bi2)); // 4
System.out.println("-----------------------------------------------------");
// 3.一次性得到商和餘數
BigInteger[] arr = bi1.divideAndRemainder(bi2);
for (int i = 0; i < arr.length; i++) {
System.out.println("下標為" + i + "的元素是:" + arr[i]); // 2 4
}
}
}
相關文章
- joda jar日期處理類的學習JAR
- visual C++數字影像處理類C++
- javascript字串處理類JavaScript字串
- Java學習--異常處理及其應用類Java
- 使用Octave音訊處理(三):數學技術處理音訊檔案音訊
- 時間處理工具類&工作日處理類
- PHP日誌處理類PHP
- 數學建模 資料處理模型之變數相關性類(灰色相關聯、相關性分析)模型變數
- php 處理 浮點數 精度運算 數字處理等PHP
- java中大數處理和高精度小數處理(so easy)Java
- Python自然語言處理 6 學習分類文字Python自然語言處理
- 【43】學習處理模版化基類內的名稱
- MyBatis 引數處理MyBatis
- CSS 小數 處理CSS
- java 圖片水印處理類Java
- java 檔案處理 工具類Java
- 資料處理 聚類分析聚類
- Java學習筆記-Day21 Java System類、Class類、內部類、異常處理Java筆記
- 科學音訊處理(二):如何使用 Octave 對音訊檔案進行基本數學訊號處理音訊
- Java Sting類關於split處理空串以及擷取最大數Java
- 批處理----學習
- java學習:虛擬機器對於方法中引數為類型別的如何處理的Java虛擬機型別
- 數字影象處理DIP
- 1470 數列處理
- 前處理器變數變數
- 數字影像處理學習筆記(1)——傅立葉變換在影像處理中的應用筆記
- 記錄Laravel異常處理類Laravel
- 分享一個圖片處理類
- 重寫Laravel異常處理類Laravel
- Photoshop類圖片處理軟體
- 30 個 PHP 的 Excel 處理類PHPExcel
- Windows批處理學習(二)——批處理(3)薦Windows
- OpenCV計算機視覺學習(12)——影像量化處理&影像取樣處理(K-Means聚類量化,區域性馬賽克處理)OpenCV計算機視覺聚類
- 形態學影像處理
- 訊號處理基本引數
- Transact-SQL處理小數SQL
- JavaScript 中的引數處理JavaScript
- python處理浮點數Python