Java:数据类型


1. 基本类型

Java 语言提供了 8 种基本数据类型,分别用于存放:

  • 整数类型
  • 浮点类型
  • 字符类型
  • 布尔类型
关键字字节(二进制位)类型名称
byte1 字节(8 位)字节型
short2 字节 (16 位)短整型
int4 字节(32 位)整型
long8 字节 (64 位)长整型
float4 字节(32 位)单精度浮点类型
double8 字节(64 位)双精度浮点类型
char2 字节(16 位)字符型
boolean1 字节(8 位)

1.1. 整数类型

Java 为整数类型提供 4 种基本数据类型,它们分别是:

  • byte,范围:- 27 ~ 27 - 1
  • short,范围: - 215 ~ 215 - 1
  • int,范围:- 231 ~ 231 - 1
  • long,范围:- 263 ~ 263 - 1

byte、short、int 和 long,都是表示整数的类型,只是表示的数范围不同。

1.2. 浮点类型

Java 为浮点类型提供 2 种基本数据类型,它们分别是:

  • float,实数,
  • double ,实数,表示数的精度是 float 表示精度的两倍

1.3. 字符类型

  • char,字符,事实上是一个 16 位无符号整数,这个值是对应字符的编码

Java 中采用 Unicode 字符集编码。Unicode 是世界上通用的定长字符集,所有的字符都是 16 位。

1.4. 布尔类型

  • boolean,用于逻辑运算,表示关系运算的结果,只能取 true 或者 false 两个值。

true 表示条件成立,false 表示条件不成立。

1.5. 类型之间的转换

不同的基本类型之间可以相互转换:

  • 自动类型转换(隐式类型转换)
  • 强制类型转换

类型转换并不会改变变量的原有类型。

1.5.1. 自动类型转换

从小类型可以转换到大类型。
类型的大小关系如下图所示:

byte
short
int
long
float
double
char

1.5.2. 强制类型转换

语法:

//语法: (需要转换成的类型) 需要转换的变量
int score = 100;
byte grade = (byte)score;

强制类型转换可能会存在精度损失或溢出。
boolean 不允许类型转换。

2. 类类型

使用 class 关键字定义的类型,都是类类型。

2.1. 预定义类

jdk 中自带的类,可以直接使用。
如:常用的 Date、Math、String、Integer 等

returnValueType functionName(argumentsType arguments)
{
	double myPI = Math.PI;
	String name = "Alan";
	...
}

2.2. 自定义类

用户使用 class 关键字定义的类型。

[public] class YourClassName [extends BaseClassName, or implements InterfaceName]
{
...
}

注意:[ ] 中的内容可选,根据情况决定是否保留。

3. 示例

public class BaseDataType
{
    public static void main(String[] args)
    {
        byte rmbNominalValue = 100;
        short grade = 150;
        int studentsNumber = 5000;
        long millisecondsPerHour = 60 * 60 * 1000;
        float coordinate = 0.5f;
        double pi = 3.14159;
        char surname = '陈';
        boolean man = true;
        System.out.println("byte type: " + rmbNominalValue);
        System.out.println("short type: " + grade);
        System.out.println("int type: " + studentsNumber);
        System.out.println("long type: " + millisecondsPerHour);
        System.out.println("float type: " + coordinate);
        System.out.println("double type: " + pi);
        System.out.println("char type: " + surname);
        System.out.println("boolean type: " + man);
    }
}

结果:

byte type: 100
short type: 150
int type: 5000
long type: 3600000
float type: 0.5
double type: 3.14159
char type: 陈
boolean type: true
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值