Number trong Java



Thường thì, khi làm việc với Number, chúng ta sử dụng các kiểu dữ liệu gốc như byte, int, long, double, …

Ví dụ:

int i = 5000;
float gpa = 13.65;
byte mask = 0xaf;

Tuy nhiên, khi mở rộng, chúng ta cũng gặp các tình huống mà chúng ta cần sử dụng các đối tượng thay cho các kiểu dữ liệu gốc. Để thực hiện điều này, Java cung cấp các lớp wrapper (lớp bọc) cho mỗi kiểu dữ liệu gốc.

Tất cả các lớp wrapper (Integer, Long, Byte, Double, Float, Short) là lớp phụ của lớp trừu tượng Number.

Lớp con của lớp Number

Sự bao bọc này được chăm sóc bởi bộ biên dịch, tiến trình này được gọi là boxing. Vì thế khi một kiểu dữ liệu gốc được sử dụng khi một đối tượng được yêu cầu, bộ biên dịch "đóng hộp" kiểu dữ liệu gốc trong lớp wrapper của nó. Tương tự, bộ biên dịch cũng "mở hộp" đối tượng thành một kiểu dữ liệu gốc. Number là một phần của java.lang package.

Dưới đây là ví dụ của box và unbox:

public class Test{

   public static void main(String args[]){
      Integer x = 5; // dong hop int thanh doi tuong Integer
      x =  x + 10;   // mo hop Integer thanh int
      System.out.println(x); 
   }
}
Quảng cáo

Nó sẽ cho kết quả sau:

15

Khi x được gán các giá trị integer, bộ biên dịch "đóng hộp" giá trị integer này bởi vì x là đối tượng integer. Sau đó, x được "mở hộp" để mà chúng có thể được cộng thêm các integer.

Các phương thức của lớp Number trong Java

Bảng dưới liệt kê các phương thức mà tất cả các lớp phụ của lớp Number thực thi:

STT Phương thức và miêu tả
1

xxxValue() trong Java

Biến đổi giá trị của đối tượng Number này thành kiểu dữ liệu xxx mà được trả về từ phương thức

2

compareTo() trong Java

So sánh đối tượng Number này với tham số

3

equals() trong Java

Kiểm tra có hay không đối tượng Number này là bằng với tham số

4

valueOf() trong Java

Trả về một đối tượng integer giữ giá trị gốc đã xác định

5

toString() trong Java

Trả về đối tượng String biểu diễn giá trị Integer đã xác định

6

parseInt() trong Java

Phương thức này được sử dụng để nhận kiểu dữ liệu gốc của một String cụ thể

7

abs() trong Java

Trả về giá trị tuyệt đối của tham số

8

ceil() trong Java

Trả về số integer nhỏ nhất mà lớn hơn hoặc bằng tham số. Giá trị trả về ở dạng double.

9

floor() trong Java

Trả về số integer lớn nhất mà nhỏ hơn hoặc bằng tham số. Giá trị trả về ở dạng double.

10

rint() trong Java

Làm tròn số, trả về giá trị integer gần nhất với giá trị tham số. Giá trị trả về ở dạng double.

11

round() trong Java

Trả về long hoặc int gần nhất, như kiểu dữ liệu được chỉ dẫn bởi phương thức, với tham số.

12

min() trong Java

Trả về số nhỏ nhất trong hai tham số

13

max() trong Java

Trả về số lớn nhất trong hai tham số

14

exp() trong Java

Hàm mũ cơ số e.

15

log() trong Java

Hàm logarit cơ số e

16

pow() trong Java

Trả về giá trị hàm mũ với cơ số là tham số đầu tiên và mũ là tham số thứ hai

17

sqrt() trong Java

Trả về căn bậc hai của tham số

18

sin() trong Java

Trả về sin của giá trị double đã cho.

19

cos() trong Java

Trả về cos của giá trị double đã cho.

20

tan() trong Java

Trả về tan của giá trị double đã cho.

21

asin() trong Java

Trả về arcsin của giá trị double đã cho.

22

acos() trong Java

Trả về arccos của giá trị double đã cho

23

atan() trong Java

Trả về arctan của giá trị double đã cho

24

atan2() trong Java

Biến đổi tọa độ (x, y) thành tọa độ cực (r, theta) và trả về theta.

25

toDegrees() trong Java

Biến đổi tham số thành giá trị độ đo góc

26

toRadians() trong Java

Biến đổi tham số thành radian.

27

random() trong Java

Trả về một số ngẫu nhiên

Quảng cáo

Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Các bạn có thể mua thêm khóa học JAVA CORE ONLINE VÀ ỨNG DỤNG cực hay, giúp các bạn vượt qua các dự án trên trường và đi thực tập Java. Khóa học có giá chỉ 300K, nhằm ưu đãi, tạo điều kiện cho sinh viên cho thể mua khóa học.

Nội dung khóa học gồm 16 chuơng và 100 video cực hay, học trực tiếp tại https://www.udemy.com/tu-tin-di-lam-voi-kien-thuc-ve-java-core-toan-tap/ Bạn nào có nhu cầu mua, inbox trực tiếp a Tuyền, cựu sinh viên Bách Khoa K53, fb: https://www.facebook.com/tuyen.vietjack

Loạt bài hướng dẫn của chúng tôi dựa một phần trên nguồn tài liệu của: Tutorialspoint.com

Follow facebook cá nhân Nguyễn Thanh Tuyền https://www.facebook.com/tuyen.vietjack để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi.




Tài liệu giáo viên