day3——有关java运算符的笔记

news/2024/11/24 9:00:08/

今天主要学习的内容有java的运算符

  • 赋值运算符
  • 算数运算符
  • 关系运算符
  • 逻辑运算符
  • 位运算符(专门写一篇笔记)
  • 条件运算符
  • 运算符的优先级
  • 流程控制

赋值运算符

赋值运算符(=)主要用于给变量赋值,可以跟算数运算符相结合,组合成复合赋值运算符
复合赋值运算符主要包括“+=”,“-=”,“*=”,“/=”,“%=”;
【注意】使用复合赋值运算符时,要注意两点
1.使用+=时,不进行类型转换,例如定义byte b1 = 1,byte b2 = 2; 计算b1+=b2后,b1依然是byte类型
2.而使用加进行类型转换时,例如b1 = b1 + b2是错误的,因为b1 + b2是int类型,不兼容。
所以在理解时可以认为使用+=时,进行了强制类型转换。

算术运算符

算术运算符包含“+”,“-”,“*”,“/”,“%”,“++”,“–”;
1.用代码来演示++,–的具体用法

public class Main{public static void main(String []args){int i = 10;int s = i++;System.out.println(s);System.out.println(i);}
}

在这里插入图片描述
i++的话是先进行运算然后进行相加,++i签好相反,是先进行相加,然后进行运算。
在这里插入图片描述
2.练习使用算术运算符:键盘输入一个四位整数,求各位之和;
在这里插入图片描述

关系运算符

关系运算符也称作比较运算符,用于比较两个变量或者常量的大小,运行的结果是布尔值TRUE 或者 FALSE;
java中有六个关系运算符分别是“==”;“>”;“<”;“>=”;“<=”;“!=”
【代码举例】
在这里插入图片描述

逻辑运算符

逻辑运算符用于对两个布尔类型的值进行运算,其结果还是布尔值
& 逻辑与 两个操作数都是true,结果才是true,两个操作数有一个为false,结果为false;无论左边取值是true还是false,右边的表达式都会计算
| 逻辑与 两个操作数都是false,结果才是false,两个操作数有一个为true,结果为true;无论左边取值是true还是false,右边的表达式都会计算
^逻辑异或,连个操作数相同,结果为false,两个操作数不同,结果为true
!逻辑非,操作数为true,结果为false,操作数为false,结果为true;
&&短路与,运行规则同&,不同在于左边为false,右边的表达式不会计算,相当于短路了
||短路或,运行规则同|,不同在于左边的表达式为true,右边的表达式就不会进行计算,相当于短路了。

那么如何证明它短路了(可用以下的方法):
在这里插入图片描述
在这里插入图片描述
以上两个程序可以证明短路的存在。

条件运算符

条件运算符是java中唯一需要三个操作数的运算符,其具体的格式如下:
条件?表达式1:表达式2
首先对条件进行判断,其结果是布尔值true 或者 false
如果为true,则返回表达式1的值
如果为false,则返回表达式2的值
在这里插入图片描述

条件运算符的优先级

java中各种运算符都有自己的优先级个结合性,优先级就是在式子中的运算顺序。优先级越高,在表达式中的顺序就越靠前
运算符的优先级如下所示

()[]
! ~ ++ --
* / %
+ - 
<< >> >>>
< <= > >= instanceof
== !=
&
^
|
&&
?:
= += -= /= %= |= ^= ~= <<= >>= >>>=

流程控制

java的流程控制主要有三种形式:顺序结构,选择结构,循环结构

顺序结构

顺序结构是指程序从上到下依此执行每一条语句的结构,中间没有任何的判断,跳转,循环

选择结构

java的选择结构主要有单分支,双分支,多分支结构,java语言使用if和switch语句实现选择结构
1.单分支if结构代码演示
在这里插入图片描述
2.双分支结构代码演示
在这里插入图片描述
3.多分支if结构
在这里插入图片描述
在这里插入图片描述

switch 多分支选择结构的使用。switch的使用有三种形式(最后一种不会了)
1.使用case 常量:
在这里插入图片描述
2.使用case ->来进行书写
在这里插入图片描述

循环结构

循环结构主要有while循环,do-while循环,for循环,具体的代码演示如下
1.写出九九乘法表
在这里插入图片描述
注意其中的"\t"为制表符,如果前面的位数没有满足8个时,自动补全8个。

2.求1+…+100的和
在这里插入图片描述
3.求100~999的水仙花数
在这里插入图片描述
4.输出1~100之间的质数
在这里插入图片描述
5.输出斐波那契数列
在这里插入图片描述


http://www.ppmy.cn/news/23609.html

相关文章

操作符详解(上篇)

前言小伙伴们大家好&#xff0c;随着对c的不断学习今天我们将来学习操作符。在初始c语言中也介绍过操作符但也只是点到即可&#xff0c;今天我们将详细了解操作符。操作符分类&#xff1a;算术操作符移位操作符位操作符赋值操作符单目操作符关系操作符逻辑操作符条件操作符逗号…

ffmpeg硬解码与软解码的压测对比

文章目录ffmpeg硬解码与软解码的压测一、基本知识二、压测实验1. 实验条件及工具说明2. 压测脚本3. 实验数据结果ffmpeg硬解码与软解码的压测 一、基本知识 本文基于intel集显进行压测 软解码&#xff1a;cpu对视频进行解码硬解码&#xff1a;显卡或者多媒体处理芯片对视频进…

【Python】Python学习笔记(二)基本输入输出

Python娘来源&#xff1a;https://next.rikunabi.com/tech/docs/ct_s03600.jsp?p002412 目录print()函数不进行自动换行的print()函数打印输出多个字符串只进行换行input()函数使用format方法格式化字符串字符串与数值转换字符串转换为数值数值转换为字符串总结参考资料print(…

【C++】CC++内存管理

就是你被爱情困住了&#xff1f;Wake up bro&#xff01; 文章目录一、C/C内存分布二、C语言中动态内存管理方式三、C中内存管理方式1.new和delete操作内置类型2.new和delete操作自定义类型&#xff08;仅限vs的底层实现机制&#xff0c;new和delete一定要匹配使用&#xff0c;…

3.2 埃尔米特转置

定义 对于复矩阵&#xff0c;转置又不一样&#xff0c;常见的操作是共轭转置&#xff0c;也叫埃尔米特转置Hermitian transpose。埃尔米特转置就是对矩阵先共轭&#xff0c;再转置&#xff0c;一般来说用三种符号表示埃尔米特转置&#xff1a; 第一种符号是AHA^HAH&#xff0c…

java 自定义json解析注解 复杂json解析

java 自定义json解析注解 复杂json解析 工具类 目录java 自定义json解析注解 复杂json解析 工具类1.背景2、需求-各式各样的json一、一星难度json【json对象中不分层】二、二星难度json【json对象中出现层级】三、三星难度json【json对象中存在数组】四、四星难度json【json对象…

麻省理工出版 | 2023年最新深度学习综述手册

UCL Simon Prince的新书&#xff1a;《Understanding Deep Learning》 &#xff0c;在2023年2月6日由MIT Press出版。他之前写过很受欢迎的《Computer Vision: Models, Learning, and Inference》。 关于这本最新的深度学习手册&#xff0c;作者这样介绍它&#xff1a; 正如书…

target31对传感器采样率限制

target31谷歌做了一些列的适配&#xff0c;其中对看似无关紧要的传感器采用率做了限制&#xff0c;最近几年很火的摇一摇开屏广告就是基于传感器去实现的。这篇文章&#xff0c;我们就一起去看一下target31对传感器采样频率的限制。 一、背景 先说一下背景&#xff1a;近期&am…