JAVA初学笔记&宋红康JAVA基础篇(其四)

JAVA基本数据类型之间的运算规则

自动类型提升

byte、char、short --> int --> long --> float --> double
1字节、2字节、2字节 --> 4字节 --> 8字节 --> 4字节 --> 8字节
-128~127、0-65535、-2^15~(2^15)-1 --> -2^31~(2^31)-1(约21亿) --> -2^63~(2^63)-1 --> -3.403E38~3.403E38 --> -1.798E308~1.798E308

当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果会自动提升到容量大的数据类型

特别的:当byte、char、short三种类型的变量做运算时,结果为 int 型

强制类型转换

  • 自动类型提升的逆运算
class CodeTest{
	public static void main(String[] args){
		double d1 = 12.3;
		// 强转化为int
		int i1 = (int)d1;
		/*
		编译成功
		输出:12
		*/
	}
}
  • 需要使用强转符 ()

  • 强转类型可能会精度损失

特殊案例

class CodeTest{
	public static void main(String[] args){
		long d1 = 123123;
		// 编译失败,整数过大
		// long l1 = 12345678910111213141516;
        long l1 = 12345678910111213141516L;
	}
}

String字符串

  1. String属于引用数据类型
  2. 声明String类型变量时。需用双引号 ""
  3. String可以和8种基本数据类型变量做运算
  4. 字符串可以用 + 运算,但结果类型需为String

进制(选学)

  • 整数表达方式

    二进制: 0,1,满2进1。以0b或0B开头。

    十进制:0-9,满10进1。

    八进制:0-7,满8进1。以数字0开头表示。

    十六进制:0-9及A-F,满16进1,以0x或0X开头表示。此处的A-F不区分大小写。

  • 二进制转十进制

    符号数0正1负26252423222120
    0(原码、反码、补码相同)0001110

    相加计算得到值14

    符号位步骤说明
    -14的源码10001110除符号位外,各个位取反
    -14的反码11110001反码+1(进一格)
    -14的补码11110010

    计算机底层都以补码的方式来存储数据

  • 十进制转二进制

    把整数除2取余数的逆

  • 二进制转八进制/十六进制

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值