Java的数据类型

Posted *李开心

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java的数据类型相关的知识,希望对你有一定的参考价值。

一.数据类型的分类

Java是一种强类型语言,所有变量都需要先定义才能使用

基本数据类型

1.整数类型

byte占1个字节:-128~127
short占2个字节
int占4个字节:正负21亿
long占8个字节

2.浮点类型

float占4个字节
double占8个字节

3.字符类型

char占2个字节

4.布尔类型

boolean占1位,值只有true和false

什么是字节?
位(bit):是计算机内容数据存储的最小单位
字节(byte):是计算机中数据处理的基本单位,习惯用大写B来表示
1B(byte,字节)=8bit(位)
字符:是指计算机中使用的字母、数字、汉字和符号

//八大基本数据类型
//整数
byte num1 = 10;
int num2 = 20;//最常用
short num3 = 30;
long num4 = 30L;//long类型要在数字后面加个L

//浮点数
float num5 = 50.1F;//float类型要在数字后面加个F
double num6 = 3.1415926;

//字符
char name = \'李\';
//字符串String不是关键字,而是类
//String student = "张三";

//布尔,值只有true和false
boolean flag = true;

引用数据类型

1.类

String
Integer
Byte
Short
Long
Float
Double
Char
Boolean

2.接口

3.数组

二.扩展

1.整数

//整数扩展:进制
int i1 = 010;//八进制  0
int i2 = 10;//十进制
int i3 = 0x10;//十六进制  0x
System.out.println("i1:"+i1);
System.out.println("i2:"+i2);
System.out.println("i3:"+i3);

运行结果:

2.浮点数

//浮点数扩展
//float 有限 离散 舍入误差 大约 接近但不等于
//double
//最好完全避免浮点数进行比较
//BigDecimal 数学工具类进行比较
float f = 0.1f;//0.1
double d = 1.0/10;//0.1
System.out.println("f==d:"+(f==d));//false

float d1=23131312312312312f;
float d2=d1+1;
System.out.println("d1==d2:"+(d1==d2));//true

运行结果:

3.字符

//字符扩展
char c1 = \'a\';
char c2 = \'中\';
System.out.println(c1);
System.out.println((int)c1);//强制转换
System.out.println(c2);
System.out.println((int)c2);//强制转换
//所有字符的本质还是数字

运行结果:

4.转义字符

//转义字符
// \\t 制表符
// \\n 换行
System.out.println("Hello1:"+"Hello\\tWorld");
System.out.println("Hello2:"+"Hello\\nWorld");

运行结果:

5.字符串

//字符串
String s1=new String("Hello World");
String s2=new String("Hello World");
System.out.println("s1==s2:"+(s1==s2));//false,比较的是地址值
String s3="Hello World";
String s4="Hello World";
System.out.println("s3==s4:"+(s3==s4));//true

运行结果:

6.布尔值

//布尔值扩展

boolean flag=true;
if (flag==true){}
if (flag){}
//flag==true和flag是一样的

以上是关于Java的数据类型的主要内容,如果未能解决你的问题,请参考以下文章

VSCode创建自定义用户片段

Java如何获取ResultSet结果中的每一列的数据类型

如何在片段中使用 GetJsonFromUrlTask​​.java

在代码片段中包含类型转换

java--方法的定义与调用

对这个带有 & 不带 = 的代码片段返回类型感到非常困惑