【Java基础快速入门】数据类型

总体划分

在这里插入图片描述

基本类型

在这里插入图片描述

整数类型

  • 当数据不带有小数或分数时,即可以声明为整数变量,如3,-147等即为整数。Java中,整数数据类型可以分为long、int、short及byte四种:long为64位,也就是8个字节(bytes),可表示范围为-9223372036854775808 到 9223372036854775807;int为32 位,也就是4个字节,表示范围为-2147483648 到 2147483647;若是数据值的范围在-32768 到 32767之间时,可以声明为short(短整数)类型;若是数据值更小,在-128到127之间时,可以声明为byte类型以节省内存空间。
    举例来说,想声明一个短整型变量sum时,可以在程序中做出如下的声明:
    short sum ; // 声明sum为短整型

  • 数据超长

class DataDemo01 {
	public static void main(String[] args) {
		int num = 99999999999999999999999 ;
		// 定义整型变量,错误,超出长度范围
	}
}
  • 数据溢出
    当整数的数据大小超出了可以表示的范围,而程序中又没有做数值范围的检查时,这个整型变量所输出的值将发生紊乱,且不是预期的运行结果。
class DataDemo02 {
	public static void main(String[] args) {
		int max = Integer.MAX_VALUE; 			// 得到整型的最大值
		System.out.println("整型的最大值:" + max);		// 输出最大值
		System.out.println("整型最大值 + 1:" + (max + 1));	// 最大值加1
		System.out.println("整型最大值 + 2:" + (max + 2));	// 最大值加2
	}
}

在这里插入图片描述

  • 强制转化防溢出
public class DataDemo03 {
	public static void main(String[] args) {
		int max = Integer.MAX_VALUE; 			// 得到整型的最大值
		System.out.println("整型的最大值:" + max);		// 输出最大值
		System.out.println("整型最大值 + 1:" + (max + 1));	// 最大值加1
		System.out.println("整型最大值 + 2:" + (max + 2L));// 最大值加2,变为long型
		System.out.println("整型最大值 + 2:" + ((long)max + 2));// 强制转换为long型
	}
}

字符类型

字符类型在内存中占有2个字节,可以用来保存英文字母等字符。计算机处理字符类型时,是把这些字符当成不同的整数来看待,因此,严格说来,字符类型也算是整数类型的一种。

  • 整数字符互相转换
public class DataDemo04 {
	public static void main(String[] args) {
		char ch1 = 'a';				// 定义字符
		char ch2 = 97;				// 定义字符,整型转字符
		System.out.println("ch1 = " + ch1);	// 打印输出
		System.out.println("ch2 = " + ch2);	// 打印输出
	}
}
  • 常见转义字符
    在这里插入图片描述
public class DataDemo05 {
	public static void main(String[] args) {
		char ch1 = '\"';				// 定义转义字符
		char ch2 = '\\';				// 定义转义字符
		System.out.println("ch1 = " + ch1);	// 打印输出
		System.out.println("ch2 = " + ch2);	// 打印输出
		System.out.println("\"Hello World|\"") ;	// 直接输出转义字符
	}
}

浮点类型

在日常生活中经常会使用到小数类型的数值,如身高、体重等需要精确的数值时,整数就不能满足程序设计者的要求了。在数学中,这些带有小数点的数值称为实数,在Java里,这种数据类型称为浮点数类型(float),其长度为32个字节,有效范围为-3.4E1038 到 3.4E1038。当浮点数的表示范围不够大的时候,还有一种双精度(double)浮点数可供使用。双精度浮点数类型的长度为64个字节,有效范围为-1.7E10308 到1.7E10308。

public class DataDemo06 {
	public static void main(String[] args) {
		float num = 3.0f;				// 定义float型变量
		System.out.println("两个小数相乘:" + num * num);// 计算两数相乘
	}
}

布尔类型

布尔(boolean)类型的变量,只有true(真)和false(假)两种。也就是说,当将一个变量定义成布尔类型时,它的值只能是true或false,除此之外,没有其他的值可以赋值给这个变量。
举例来说,想声明名称为flag变量为的布尔类型,并设置为true值,可以使用下面的语句:
boolean flag = true ; // 声明布尔变量flag,并赋值为true

public class DataDemo07 {
	public static void main(String[] args) {
		boolean flag = true;				// 定义布尔型变量
		System.out.println("flag = " + flag);		// 打印输出
	}
}

基本类型默认值

在这里插入图片描述

数据类型转换

Java的数据类型在定义时就已经确定了,因此不能随意转换成其它的数据类型,但Java允许用户有限度地做类型转换处理。数据类型的转换方式可分为“自动类型转换”及“强制类型转换”两种。

自动转换

在程序中已经定义好了数据类型的变量,若是想用另一种数据类型表示时,Java会在下列的条件皆成立时,自动做数据类型的转换:
转换前的数据类型与转换后的类型兼容。
转换后的数据类型的表示范围比转换前的类型大。

public class DataDemo08 {
	public static void main(String[] args) {
		int x = 30;					// 定义整型变量
		float y = 22.19f;					// 定义浮点型变量
		System.out.println("x / y = " + (x / y));		// 除法操作
		System.out.println("10 / 3.5 = " + (10 / 3.5));	// 直接使用常量进行除法
		System.out.println("10 / 3 = " + (10 / 3));	// 直接使用常量进行除法
	}
}
  • 任何类型数据朝string类型转换
public class DataDemo09 {
	public static void main(String[] args) {
		String str = "lixinghua ";		// 定义字符串变量
		int x = 30;				// 定义整型变量
		str = str + x;				// 改变字符串变量内容
		System.out.println("str = " + str);	// 打印输出
	}
}

强制转换

当两个整数进行运算时,其运算的结果也会是整数。举例来说,当做整数除法8/3的运算,其结果为整数2,并不是实际的2.33333…,因此在Java中若是想要得到计算的结果是浮点数时,就必须将数据类型做强制性的转换,转换的语法如下:
(欲转换的数据类型)变量名称;

public class DataDemo11 {
	public static void main(String[] args) {
		float f = 30.3f;					// 定义浮点型变量
		int x = (int) f;					// 强制转换为int型
		System.out.println("x = " + x);			// 输出转型之后的值
		System.out.println("10 / 3 = " + ((float) 10 /  3));
		// 常量计算使用强制类型转换
	}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值