java int to short_自学java的新手问个问题,为什么写个代码中的int能自动转

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

你学一个东西 先学会他的定义

java语法是这样定义的 类型修饰符 变量名 = 值

其中左边是被赋值的 右边是赋值的 类型修饰符有 八种 int boolean char short long float double byte

当你声明 一个变量时 的语法是

类型修饰符 变量名; 也就是 int a; char a;等等

当你使用类型修饰符的时候 那你赋的值就必须是满足类型修饰符定义的概念

比如 int 在64位系统上 是占 4个字节 即取值范围为 0 - 2^32 这是无符号的,有符号的打半

而java中通常都是有符号存储,所以一个int 可存取 0-2^31-1的正数

即 int a = 2^31-1以内的数,超过了Java会报错

char 在64为系统上占2个字节,而一般中文的存储都是gbk,unicode编码 通常都是2个字节 所以char 可以用来存取中文和英文

char a = '1' ; 或者char a ='啊';等等 只能存取一个能用2字节表示的数, char a = 1;此时这种语法也是可以的,他会把1看做是编码字符集所表示的那个数字来解析它对应的char类型,总而无论是数字还是字符,只要是2个字节 Java都会识别,java内部会帮你默认转化为对应的类型.

其余的自己去百度认真思考

java语法中如果没有默认声明类型修饰符 即 int char ....,如果是整数就默认是Int类型的 64位系统上占4字节,如果是浮点数 即0.0这种类型的 就默认是 double类型,64位系统上占8个字节,

java语法中 默认是可以自动向上转型,即一个long型的变量可以接收一个int型的变量,因为long型通常占8个字节,int占4个字节 肯定可以接收,此时不需要做什么操作,而如果一个int型变量转化为short的时候就需要强制转化,因为有可能会出错,因为一个int 占4个字节,short占2个字节 转化过来的时候可能数据会出错,java要进行数据校验,所以必须进行强制转化

学习代码的时候 一定要先读懂 定义,然后展开联想,理解.学习过程由简单 到复杂,最好读定义的时候,多写几个实例加强自己的理解 在自己根据理解写几个应用 这样学习的时候 才能做到理论实践与一体,面试的时候 才能跟面试官侃侃而谈

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值