第二章 基本数据类型及运算符

一、数据类型

1.数据类型转换

long num1 = 100 //当数据类型不一定就会发生数据转换。

自动数据类型转换(隐式)

1.特点:代码不需要特殊处理,自动完成;
2.规则:数据范围从小到大。

强制数据类型转换(显式)

1.特点:代码需要特殊处理,自动完成;
2.格式:范围小的类型 范围小的变量名 = (范围小的类型) 范围大的数据;int num = (int)100L;

注意事项

1.强制类型不推荐使用,因为可能发生精度损失,数据溢出(撒了);
2.Byte/short/char这三种类型都可以发生数学运算,例如加法: + ;
3.Byte/short/char这三种类型在数学运算的时候,都会被首先提升成int类型,然后进行运算。

2.ASCLL编码表

ASCLL码表

二.运算符

在这里插入图片描述
1.对于一个整数表达式来说,除法是整数,只看商不看余数。
2.一旦运算中有不同类型的数据,那么结果是数据类型范围大的。

1.四则运算中加号(+)的三种常见用法

1.对于数值来说是加法
2.对于char类型来说,在计算之前,先被提升成为int类型,然后在计算。
3.对于字符串String(首字母大写,并不是关键字)来说,加号代表字符串连接操作。
4.任何数据类型和字符串连接的时候,结果都会变成字符串;
5.小括号优先级最佳。

2.自增自减运算符

自增: ++
自减: - -
使用格式:写在变量名称之前,或者之后,例如:num++ , ++num;
使用方式:

  1. 单独使用:不和其他任何操作混合,自己独立成为一个步骤;
  2. 混合使用:和其他操作混合,例如与赋值混合,或者与打印操作混合。
    使用区别:
    1)单独使用时候num++与++num是一样的;
    2)在混合使用时候有重大区别;
    A.如果是前++,那么变量立刻马上+1,然后拿着结果使用;先加后用
    B.如果是后++,那么首先使用本来的数值,然后再让变量+1;先用后加
    在这里插入图片描述

3.赋值运算符

在这里插入图片描述
基本赋值运算符: = ,将右边赋值左边;
复合赋值运算符:

  1. += , a += 1 相当于 a = a + 1;
  2. -= , a -= 1 相当于 a = a - 1 ;
  3. %= , a %= 7 相当于 a = a % 7。

注意事项

  1. 只有变量才能使用复合赋值运算,常量不行;
  2. 复合赋值运算其中隐含一个强制类型转化。

4.比较运算符

在这里插入图片描述

注意事项

  1. 比较运算符的结果一定是一个boolean值,成立就是true,反之false;
  2. 如果进行多次不能进行连着写,例如: 8<x<10;

5.逻辑运算符

  1. 与(并且) && 全得是true,才是true,否则false
  2. 或(或者) || 至少一个是ture,才是true,两个false,才是false
  3. 非(取反) ! true变false,false变true
  4. 与(&&)、或(||)具有短路效果,如果根据左边能得到结果,那么右边的代码不再执行,从而节省一定性能。

注意事项

  1. 逻辑运算符只能用于boolean值。
  2. 与或需要左右各自有一个boolean值,非只需要一个即可;
  3. 与、或如果有多个条件可以连续写。
    Tips:对于1<x<3的情况,有
    Int x = 2;
    1<x && x<3.

6.三元运算符

  1. 一元运算符:只需要一个数据就可以操作的运算符,例如:取反,自加,自减;
  2. 二元运算符:加法、赋值;
  3. 三元运算符:需要三个数据才可以进行操作的运算符。

格式:
数据类型 变量名称 = 条件判断 ? 表达式A : 表达式B;

流程:
首先判断条件是否成立
如果成立为true,那么将表达式A赋值给左侧变量;
如果不成立为false,那么将表达式B赋值给左侧变量;
二者选其一。
注意事项

  1. 必须同时保证表达式A和表达式B都符合左侧数据类型的要求。
  2. 三元运算符的结果必须被使用。

三、方法入门

1.概述:

方法就是将一个功能抽取出来,把代码单独定义一个大括号内,形成一个单独的功能。
当然我们需要这个功能的时候就可以去调用,这样既实现了代码的复用性,也解决了代码冗余的现象。

格式
Public static void 方法名称(){
方法体
}

方法名称的命名规则和变量一样,使用小驼峰式。
方法体:大括号内可以包含任意一个语句。

注意事项

1.方法定义的先后顺序无所谓;
2.方法的定义不能产生嵌套包含关系;
3.方法定义好了之后,不会执行的。如果想要执行,一定要进行方法的调用。
如何调用方法
格式:
方法名称 ();

四、Jshell的使用

输入jshell,进入;
输入/exit推出jshell。

1.Jshell的使用

2.编译器的两点优化

1.对于byte/short/char三种类型来说,如果右侧赋值的数值没有超过范围,那么JAVAC编译器会自动补上(byte)、(short)、(char)。如果右侧超过左侧的范围,编译器自动报错。
2.在给编译器进行赋值的时候,如果右侧的表达式当中全都是常量,没有任何变量,那么编译器javac将会直接将若干个常量表达式计算得到结果。如果表达式有变量参与,那就不能进行此优化。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值