Java基础语法(总结)

类型转换

原因:开发中会存在不同类型的变量或者数据赋值给其他类型的变量,也存在不同类型的数据一起运算,其结果类型要确定下来

自动类型转换

原理:小范围类型的变量可以直接赋值给大范围类型的变量

范围信息:

形式:

  • byte a = 20;
  • int b = a;

注意这种形式是可以的:

  • char ch = 'a';
  • int code = ch;

表达式的自动类型转换

含义:在表达式中,小范围类型的变量会自动提升成大范围运算

结论:表达式的最终结果数据类型是由表达式在的最高数据类型决定的,最高数据类型是什么,其结果数据的类型就是什么。

注意: byte short char 在表达式中,是直接提升成int运算

面试笔试题: byte b1 =21; byte b2 =22

  • byte b3 = b1 + b2; //错误形式
  • int b3 = b1 + b2;
  • byte b3 = (byte) (b1 + b2);

强制类型转换

含义:大范围类型的变量或者数据不能直接赋值给小范围类型的变量,否则报错!必须进行强制类型转换才可以。

格式:数据类型 变量 = (数据类型)其他类型的变量/数据

注意:强制类型转换可能出现数据丢失

  • int a = 1500;
  • byte b = (byte)a;

注意:浮点型类型的变量或者数据强制转换成整型,保留整数部分返回的,小数部分直接不要了

  • double a = 99.5;
  • int i = (int)a; // i == 99

运算符

基本运算符

常见的:+ - * / %

注意:/ 两个整数相除的结果一定是整数

  • 10 / 3 ==3
  • 1.0 * 10 / 3 ==3.33...

+符号做连接符

场景:+符号与字符串一起运算时,充当连接符,连接后的结果还是一个字符串。

识别技巧:能算则算,不能算大家连在一起

自增自减运算符

++

  • 对变量进行+1操作

--

  • 对变量进行-1操作

注意事项

  • 只能操作变量,不能操作字面量

• a++; //没毛病

• 2++; //没有这种形式,报错!

  • ++ -- 单独使用,放在变量前后,没有区别;

• a++;++a;

  • ++ -- 如果不是单独使用,放在变量前后有明显区别

• 在变量前面:先+1,-1再使用变量

• 在变量后面:先使用变量,再对变量+1 -1

赋值运算符

=,+=,-=,*=,/=,%=

a += b

  • 等价于:a =(a的类型)(a + b);
  • 用处:

• 适合做数据的累加操作

• int a = 10;

• int b = 5;

• a += b;

• 自带强制类型转换

• byte b1 =2;

• byte b2 =3;

• byte b3 =(byte)(b1 + b2); ==> b1 += b;

关系运算符

== 、= > > + < <=

判断是否满足条件的,返回true 和 false

  • int age = 19;
  • System.out.println(age >= 18);
  • 以下代码是另一种写法形式
  • boolean rs = age >= 18;
  • System.out.println(rs);

逻辑运算符

&、&& |、|| ! ^

  • &(逻辑与):且的意思,必须前后都true,结果是才是true
  • &&(短路与):且的意思,必须前后都是true,结果才是true
  • 区别:&&如果发现前面是false后面不执行,直接返回结果,性能较好一点,用的更多一点。

  • |(逻辑或):或的意思,只要前后有一个是true,结果就一定是true
  • | |(短路与):或的意思,只要前后有一个是true,结果一定是true
  • 区别:| |如果是发现前面是 true 后面不执行,直接返回结果,性能较好一点,用的更多一点。

  • 取反 !false = true   !true = false

^异或操作:前后一样返回false,前后不一样返回true

三元运算符

做分支选择的,关键是格式

  • 条件表达式?值1:值2;

运算符优先级

运算符存在谁先谁后执行的情况

  • ()优先级的最高
  • * / 高于 + -
  • && 优先级高于 | |

案例知识:键盘录入技术

Java自己提供好的程序给程序员调用的

API文档:应用程序编程接口,技术说明书,告诉我们怎么使用Java的程序。

键盘录入技术

1,导包(自动导包):import java.util.Scanner

2,创建一个扫描对象:Scanner sc = new Scanner(System in);

3,等待接收用户的数据:int age = sc.nextInt();

4,等待接收用户的数据:String name = sc.next();

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值