java基础(数据类型,运算符)

2.2 Java基础语法

java基础之数据类型(变量)

java中存在的数据有常量和变量

  • 常量:在程序执行的过程中其值不可以发生改变

  • 常量的分类

  • 字面值常量

  • 字面值常量的分类

常量描述
字符串常量用双引号括起来的内容
整数常量所有整数
小数常量所有小数
字符常量用单引号括起来的内容,里面只能放单个数字,单个字母或单个符号
布尔常量较为特殊,只有true和false
空常量null(数组部分)
  • 自定义常量

  • 变量:在程序执行的过程中,在某个范围内其值可以发生改变的量

  • 定义格式:
    数据类型 变量名 = 变量值;

  • 定义变量原因:
    用来不断的存放同一类型的常量,并可以重复使用

java的数据类型

  • 有数据类型原因:Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存中分配了不同大小的内存空间

  • Java中数据类型的分类

    • 基本数据类型
    • 引用数据类型
  • 基本数据类型分类(4类8种)

    • 整数型
数据类型所占字节范围
byte占一个字节-128到127 
short占两个字-215~215-1
int占四个字节-231~231-1
long占八个字节-263~263-1
  • 浮点型
数据类型所占字节范围
float占两个字节-3.403E38~3.403E38
double占四个字节-1.798E308~1.798E308
  • 字符型
数据类型所占字节范围
char占两个字节0~65535
  • 布尔型
    boolean

小细节:boolean理论上是占八分之一个字节,因为一个开关就可以决定是true和false了,但是java中boolean类型没有明确指定他的大小

数据类型间的转换

  • 自动:小到大
  • 强制:大到小

Java中的默认转换规则

  • 自动
    • 取值范围小的数据类型与取值范围大的数据类型进行运算,会先将小的数据类型提升为大的,再运算
  • 强转
    • 如果超出了被赋值的数据类型的取值范围得到的结果会与你期望的结果不同

数据类型的取值范围

  • 进行混合运算的时候,byte,short,char不会相互转换,都会自动类型提升为int类型,其他类型进行混合运算的是小的数据类型提升为大的

byte <- short <- char <- int <- long <- float <- double

注意:float表示的数据范围比long的范围要大
原因

long:2^63-1
float:3.410^38 210^38 28^38 = 22338 = 2*2^114 2^63-1

运算符

运算符:就是对常量和变量进行操作的符号。
分类:

  • 算术运算符
  • 赋值运算符
  • 比较(关系或条件)运算符
  • 逻辑运算符
  • 位运算符
  • 三目(元)运算符

1)算数运算符

算术运算符:+-*/%,++,--
++/--:自增1/自减1
1.1)单独使用时,在前在后无差别
1.2)若被使用时,在前在后有差别
1.2.1)++在后,先使用,后自增1
1.2.2)++在前,先自增1,后使用

  • 单独使用:

    • 放在操作数的前面和后面效果一样。
  • 参与运算使用:

    • 放在操作数的前面,先自增或者自减,然后再参与运算。
    • 放在操作数的后面,先参与运算,再自增或者自减。

注意事项:

  • "+"号在java中有三种作用,代表正号,做加法运算,字符串的连接符

  • 整数相除只能得到整数。如果想得到小数,必须把数据变化为浮点数类型

  • /获取的是除法操作的商,%获取的是除法操作的余数

  • %运算符

    • 当左边的绝对值小于右边绝对值时,结果是左边
    • 当左边的绝对值等于右边或是右边的倍数时,结果是0
    • 当左边的绝对值大于右边绝对值时,结果是余数
    • %运算符结果的符号只和左边有关系,与右边无关
    • 任何一个正整数%2结果不是0就是1可以用来当作切换条件

2)关系运算符:

  • 2.1)>(大于),<(小于)

  • >=(大于或等于),<=(小于或等于)

  • ==(等于),!=(不等于)

  • 2.2)关系运算的结果为boolean型,

  • 关系成立则为true,关系不成立则为false

3)逻辑运算符:

3.1)&&:短路与,两边都为真则为真,见false则false
若左边的数为false,则发生短路(右边不走了)

  • ||:逻辑或,有一边为真则为真,见true则true
    若左边的数为true,则发生短路(右边不走了)

  • !: 逻辑非,非真则假,非假则真

3.2)逻辑运算都是建立在关系运算基础之上的

  • 逻辑运算的结果为boolean型

4)赋值运算符

4.1)简单赋值:=

  • 扩展赋值:+=,-=,*=,/=,%=

4.2)建议使用扩展赋值,因其效率高

5)字符串连接运算符

5.1)+:

  • +号两边若为数字,则做加法运算
  • +号两边任有一边为字符串,则做字符串拼接

6)条件/三目运算符:

6.1)格式

  • boolean ? 数1 : 数2

6.2)计算boolean的值:

  • 若为true,则整个表达式的结果为数1
  • 若为false,则整个表达式的结果为数2
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值