cac-kieu-du-lieu-trong-java

Các kiểu dữ liệu Java – Nguyên thủy và chữ nhị phân

Java là một ngôn ngữ được đánh máy mạnh, điều đó có nghĩa là tất cả các biến phải được khai báo trước khi chúng ta có thể sử dụng nó. Khai báo một biến trong java bao gồm kiểu và tên với sự gán giá trị tùy chọn. Nếu không có giá trị nào được gán, thì biến sẽ giữ giá trị mặc định. Đối với các kiểu nguyên thủy, có các giá trị mặc định khác nhau nhưng luôn là NULL cho các kiểu dữ liệu Object.

LUYỆN THI CHỨNG CHỈ OCA

Các kiểu dữ liệu nguyên thủy của Java

Bảng dưới đây hiển thị tất cả các kiểu dữ liệu nguyên thủy này với kích thước, phạm vi, giá trị mặc định và các cách khác nhau để gán chúng.

TypeSizeRangeDefault ValueExamples
boolean1 bitNAfalseboolean bool = true;
char16 bitsUnicode Characters‘\u0000’ or 0, which
is nothing but a
white space
char c = ‘A’;
char c = ‘\u0041’;
char c = 65;
char c = ‘\t’;
byte8 bits[-128,127] or
[-2^7 to 2^7-1]
0byte b = 10;
byte b = 0b010;
short16 bits[-32768,32767]0short s = 32;
short s = ‘A’;
int32 bits[-2147483648,2147483647]0int i = 10;
int i = ‘A’;
long64 bits[-2^63,2^63-1]0long l = 3200L;
long l = 3200;
float32 bits[-3.4E38, 3.4E38]0.0ffloat f = (float) 12.34;
float f = 12.34f;
double64 bits[-1.7E308, 1.7E308]0.0double d = 12.34;

Dưới đây là một chương trình java đơn giản chỉ ra các cách khác nhau để khai báo các kiểu dữ liệu nguyên thủy – hãy xem xét kỹ char và điều gì sẽ xảy ra khi một int được chuyển đổi thành byte thông qua ép kiểu rõ ràng.

public class DataTypes {

	public static void main(String[] args) {
		
		char c = 'A';
		System.out.println(c); //prints A
		
		char c1 = '\u0041';
		System.out.println(c1); //prints A
		
		char c2 = 0;
		System.out.println("Default Value:"+c2+":"); // prints Default Value: :
		
		char c3 = 65;
		System.out.println(c3); //prints A
		
		char c4 = '\t';
		System.out.println("Tab Start:"+c4+":End"); //prints Tab Start:	:End
		
		byte b = 10;
		System.out.println(b); //prints 10
		
		byte b1 = (byte) 200;	
		System.out.println(b1); // prints -56
		//<0...>_11001000 (int), converted to 11001000 (byte) by stripping leading 24 bits
		// since left most bit is 1, we need to find the value
		// Ones complement 11001000 -1 = 11000111
		//invert digits 00111000 i.e 56, hence printing -56
		
		b1 = (byte) 0b11001000;
		System.out.println(b1); //prints -56
		
		byte b2 = (byte) 320; //256+64 i.e 00000000_00000000_00000001_01000000, byte 01000000
		//since leading bit is 0, nothing is required to determine value
		System.out.println(b2); //prints 64
		
		short s = 32;
		short s1 = 'A'; //implicit char to short conversion
		System.out.println(s1); //prints 65
		
		int i = 'A';
		System.out.println(i); //prints 65
		
		long l = 3200L;
		long l1 = 3200;
		
		float f = 12.34f;
		
		//Examples
		byte x, y = 1, z = 2; 
		x = (byte) (y + z);
	}

}Code language: PHP (php)

Sử dụng gạch dưới trong chữ số

Từ Java 7 trở đi, chúng ta có thể sử dụng dấu gạch dưới trong các ký tự số chẳng hạn như long ccNum = 1234_5678_9101_1121L ;.

Chữ nhị phân

Từ Java 7 trở đi, các kiểu tích phân (byte, short, int và long) cũng có thể được biểu diễn bằng cách sử dụng hệ thống số nhị phân. Chúng ta cần thêm tiền tố 0b hoặc 0B. Một số ví dụ là;


// An 8-bit 'byte' value:
byte aByte = (byte)0b00100001;

// A 16-bit 'short' value:
short aShort = (short)0b1010000101000101;
Code language: PHP (php)

Đó là tất cả đối với các kiểu dữ liệu nguyên thủy trong java. Vui lòng xem kỹ chương trình để hiểu điều gì sẽ xảy ra khi chúng tôi thực hiện casting.

Happy learning!!!

HỌC JAVA CORE

Bài viết liên quan

Leave a Reply

Your email address will not be published.

TÀI LIỆU DEV WORLD
Cẩm nang phát triển bền vững với nghề lập trình!