【Java基础】类型转换与常用运算符

​个人简介

> 📦个人主页:轻狂客_零度的主页
> 🏆学习方向:JAVA后端开发 
> 📣种一棵树最好的时间是十年前,其次是现在!
> ⏰往期文章:VUE [入门篇(三)]
> 🧡喜欢的话麻烦点点关注喔,你们的支持是我的最大动力。

前言:

关于Java语言基础知识我们需要学会什么?

类型转换知识

如何实现程序中不同类型的变量或者数据互相传输,不同类型的数据运算的结果数据的类型如何确定?

运算符的使用

程序中怎么进行数据的基本算术运算,以及一些逻辑运算,Java提供了具体的哪些运算方式

怎么调用Java提供的程序

程序员需要调用Java写好的一些程序,这些程序如何去调用

活动地址:CSDN21天学习挑战赛

目录

前言:

1. 类型转换

1.1 自动类型转换

1.2 表达式的自动类型转换

1.3 强制类型转换

2. 运算符

2.1 普通四则运算符

2.2 取余 %

2.3 自增自减运算符

2.4 比较运算符

2.5 练习题: ==比较的练习

2.6 逻辑运算符

2.7 三目运算符

2.8 复合赋值运算符

2.9 赋值运算符

2.10 拼接功能

2.11 位运算符

2.12 优先级控制

2.13 拓展

3. 案例知识: 键盘录入技术


1. 类型转换

1.1 自动类型转换

 1. 为什么要进行类型转换?

   存在不同类型的变量赋值给其它类型的变量.

 2. 自动类型转换是什么样的?

   类型范围小的变量,可以直接赋值给类型范围大的变量. 

1.2 表达式的自动类型转换

  1. 表达式的自动类型转换是什么样的?

    小范围的类型会自动转换成大范围的类型运算.

  2. 表达式的最终结果类型是由谁决定的?

     最终类型由表达式中的最高类型决定.

  3. 表达式有哪些类型转换是需要注意的?

     byte, short, char 是直接转换成int 类型参与运算的/ 

1.3 强制类型转换

  1. 什么是强制类型转换?

    可以强行将类型范围大的变量, 数据赋值给类型范围小的变量.

     数据类型    变量  =  (数据类型)变量, 数据

  2. 强制类型转换有哪些需要注意的?

    1).可能会出现数据丢失.

    2).小数强制转换成整数时直接截断小数保留整数.

口诀:小转大,直接转 大转小,强制转 浮变整,小数没

注意:布尔类型不参与类型转换
注意:基本类型之间能否转换,不取决于字节数,字节数只能做参考,取决于类型的取值范围
注意:我们这里所说的是基本类型之间的转换,引用类型之间的转换取决于是否有继承关系
比如:你可以说小猫是小动物,但是不能说小猫是小汽车,不然后面的这种错误的情况会报:类型转换异常

2. 运算符

2.1 普通四则运算符

+ - * / ,普通的四则运算,并不能直接改变变量本身的值,除非 i = i*10+8

2.2 取余 %

  6%4=2 6%3=0(余数为0表示整除)

2.3 自增自减运算符

1)可以改变变量本身的值
2)前缀式: 符号在前,先改变变量本身的值(+1/-1),再使用(打印/参与运算…)
3)后缀式: 符号在后,先使用(打印/参与运算…),再改变变量本身的值(+1/-1)
4)注意:不管是前缀式还是后缀式,一定是会改变变量本身的值,区别在于执行的时机不同

2.4 比较运算符

  1. 比较运算符最终的结果是布尔类型的
  2. == 比较的是左右两边的值是否相等 !=比较的是左右两边的值是否不相等

2.5 练习题: ==比较的练习

package cn.tedu.basic;
/*本类用于测试运算符*/
public class TestOperator {
    public static void main(String[] args) {
        //创建小猫类的对象
        Cat c1 = new Cat();
        Cat c2 = new Cat();
        int[] a1 = {1,2,3};
        int[] a2 = {1,2,3};
        int b1 = 4;
        int b2 = 4;
        boolean f1 = true;
        boolean f2 = true;
        /*==如果比较的是引用类型,比较的值是引用类型变量保存的地址值*/
        System.out.println(c1 == c2);//false
        System.out.println(a1 == a2);//false
        /*==如果比较的是基本类型,比较的值就是字面值,也就是这个变量具体存的那个数*/
        System.out.println(b1 == b2);//true
        System.out.println(f1 == f2);//true
    }
}

class Cat{
    String name;
    int age;

    public void bark(){
        System.out.println("喵喵叫");
    }
}

2.6 逻辑运算符

双与/短路与/&& :
判断逻辑与&一致,增加了短路的功能全真才真,有假则假
双或/短路或/|| :
判断逻辑与|一致,增加了短路的功能全假才假,有真则真
注意:我们这里所说的短路,是指在某些情况下,表达式后半部分就不用计算了,因为我们已经知道了结果,也就是被短路了,短路可以提高程序的性能,但是短路不一定会用到

2.7 三目运算符

1 ? 2 : 3; 1是表达式,1真取2,1假取3

2.8 复合赋值运算符

+= -= *= /=是一种简写的形式,比较方便,运算时会自动进行类型转换

2.9 赋值运算符

= ,右边给左边

2.10 拼接功能

+

2.11 位运算符

主要参与的是二进制的运算

&与:全真才真
| 或:全假才假
^异或:相同为0 不同为1
~ 非: 非0为1,非1为0

2.12 优先级控制

如果表达式的运算比较复杂,需要控制优先级,可以使用小括号

2.13 拓展

instanceof

3. 案例知识: 键盘录入技术

需求: 

请完成Java程序与用户交互,比如录入用户输入的名称, 年龄, 怎么办?

API(Application Programming Interface,应用程序编程接口)

 Java写好的程序(功能代码),咱们可以直接调用.

Oracle 也为Java 写好的程序提供了相应的 API文档(技术使用说明书)

下载API文档:

http://www.oracle.com/technetwork/java/javase/downloads/index.html

键盘录入功能实现的三个步骤:

 1. API是什么?

Application Programming Interface,应用程序编程接口。
Java写好的程序,咱们可以直接调用。
2. 键盘录入的开发步骤
导包:import java.util.Scanner;
抄写代码得到扫描器对象: Scanner sc = new Scanner(System.in)
抄写代码等待接收用户输入的数据: sc.nextInt() 、sc.next()
  • 27
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 23
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是Lay

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值