小白的JAVA第三天(变量定义)

变量定义

接上回,关于变量定义的注意事项

1.定义float类型的变量,在值得后面要加后缀F,表示一个float类型的值

2.定义long类型的变量,在值的后面要加后缀L,表示一个long类型的值

整数默认是int类型,小数默认是DOUBLE类型。

关于变量计算的实操。数据类型隐式转换

我们先看关于BYTE类型的数据计算。

在这里插入图片描述

但让我们蒙圈的是,我们这里报错了。原因是:当中的计算会有自动类型提升机制,当byte,short,char在参与计算时,会自动提升为int类型,但当计算中参杂了 long,float,double 类型参与计算时,又会响应提神为 long,float,double 的类型。byte,short,char 他们三个不参与转换的,布尔类型不参与数学运算。

原理:byte是一字节,而int 是4字节类型,你让一个输出为4字节的单位放到了1字节的盒子里,明显是装不下的。

所以,在此的解决是

int c=a+b;

在这里插入图片描述

完成。同理,以long类型为例:

在这里插入图片描述

我们的运算中要是出现了更大字节类型的数据,我们给输出一个相应的字节类型就好了。

在这里插入图片描述

double同理,double是8字节浮点型,而float是4字节浮点型,所以给个double c=a+b; 即可,这里不再赘述。

但是啊,我这里想了个骚东西:如果我们输入是BYTE,输出给个大的字节,如double类型,这样我们以后写的时候不久可以无脑来了嘛~~~,所以。

在这里插入图片描述

虽说是验证成功,但是有没有科学依据,这个不得而知,希望各位大佬们看见即使指出。(这里老师说明了是可以的

数据类型的强制转换

那么我们非要进行如上面的BYTE的类型输出,我们可以进行强制转换操作如下

在这里插入图片描述

但是我们需要注意的是,这种操作是将INT的部分字节给丢弃了,所以能输出,但是一旦结果超出了-128~127,我们的结果就会出现严重偏差。但是啊,你们也懂,这个东西不建议用,我看着都麻烦。除非咱们有特殊的需求。

常量优化机制

在多个常量参与计算时,会先运算出来结果,看这个结果在不在数据类型的数据范围内,在不报错,不在报错。

在这里插入图片描述

JAVA中的char 可以存放汉字,因为JAVA 语言采用Unicode编码,他之中的GBk编码每个字符占两个字节。

字符和字符串参与运算(重点)

首先,我们先认识一下ASCII码表

在这里插入图片描述

除了特殊的,我们记住“a”=97,“A”=65,“0=48”即可,其他以此加一类推即可。

关于操作

在这里插入图片描述
关于此处数据类型的字节长短问题,和上面是一样的。

算法运算符的基本用法

运算符:对常量,变量进行操作的符号。

有;算数运算符,赋值运算符,比较运算符,逻辑运算符,三目运算符,位运算符

算数运算符

关于“+”,他有两层作用。第一作用,起数学相加作用。

​ 第二作用,起连接符作用

在连接符,在+号运算的任意一边是一个字符串,那么加号起链接作用,将两端拼接起来(并不是相加起来),形成新的字符串,如:

‘字符’ “字符串”
在这里插入图片描述

如同加减乘除一般规则一样,没加括号时,从左到右依次进行。

在这里插入图片描述

运算起来,减法,乘法一样,特殊的是除法。

关于除法:

如果是10/5,自然是2,但是10/3却不是3.333333

输出的为3,两个整数相除,舍去小数部分,保留整数部分。

在这里插入图片描述

当然以上的INT类型是输出不了的,但是要输出,可以:

在这里插入图片描述

我知道你们看到这个最后的5了,但是这就是数据,而且和老师的一样,这可能就是社会吧…

%百分号,是用来取余数的。

  1. ​ //++ 自增1

​ //-- 自减1

程序入下

在这里插入图片描述
但是我们发现,++或者————的时候,有前有后,什么意思呢?

我们规定:++在前,先进行运算,后进行程序的使用

​ ++在后,先进行程序的使用,后进行运算

—号同理

在这里插入图片描述

结果如上

赋值运算

赋值运算有哪些:=. += -= /= %=*/

“=号”

int a=20;
//其意思为把右边的整数常量,赋值于左边的int类型的变量a,变量也可以。

运算时从右往左开始的

“+=”

int a=10;
a=a+10;
//此处a等10,在赋值中从右往左算,而这个等价于
a+=10;

那么,二者是等价的,而且我看第一个运算程序还顺眼,我为什么要死气摆列的用第二个呢,那当然是有区别的啦~~

前面的知识我们说道:如果以byte类型进行运算,输出会自动升级运算类型为int,那么我输出的结果一定是报错的。

在这里插入图片描述

但是我们使用了“+=“时,他会自动帮我们进行强制转换,以达到输出目的。“—=” /= *=是同一意思。

在这里插入图片描述

比较运算符

==等于 !=不等于 < 小于 > 大于 <=小于等于 >= 大于等于 Instanceof(后面讲)

比较运算符的运算结果是布尔类型(true false)

在这里插入图片描述

此处注意区别,“=”及其相同类型的操作是赋值,而“==”及其相关类型操作是判断真假对错,是判断。

此处注意区别,“=”及其相同类型的操作是赋值,而“==”及其相关类型操作是判断真假对错,是判断。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值