【添砖Java】java的运算符、注释与关键字

news/2024/4/25 0:55:10/

文章目录

    • 运算符
      • 算术运算符
      • 关系运算符
      • 逻辑运算符
      • 位运算符
      • 移位运算符
      • 条件运算符
    • 注释
      • 基本规则
      • 注释规范
    • 关键字

运算符

算术运算符

  1. 基本四则运算符:+(加)、-(减)、*(乘)、/(除)、%(取余);
     int/int的结果还是int,0不能作为除数;
     %不仅可以对int求模取余,也可以对double求模取余。
  2. 增量赋值运算符:+=、-=、*=、/=、%=;
  3. 自增/自减运算符:++、–;
     如果不取自增运算的表达式的返回值,则前置自增和后置自增没有区别;
     如果取表达式的返回值,则前置返回的值是自增之后的值,后置自增是返回自增之前的值。

关系运算符

  关系运算符主要有六个:==、!=、<、>、<=、>=;
  关系运算符的返回值都是boolean类型。

逻辑运算符

  逻辑运算符主要有三个:&&(与)、||(或)、!(非);
  逻辑运算符的操作数和返回值都是boolean。

  1. 逻辑与&&
     两个操作数都为true时,返回true,否则返回false;
  2. 逻辑或||
     两个操作数都为false时,返回false,否则返回true;
  3. 逻辑非!
     操作数为false时,返回true,操作数为true时,返回false。
  4. 短路求值
     &&和||遵守短路求值的规则,&&第一个操作数为false则直接返回false,||第一个操作数为true则直接返回true。
  5. &和|
     &和|的操作数为boolean的时候,也表示逻辑运算,但是不支持短路求值。

位运算符

  位运算符主要有四个:&、|、~、^;
  位操作表示安二进制位运算,计算机中都是使用二进制来表示数据的,按位运算就是在按照二进制位的每一位一次进行计算。

  1. 按位与&:全1为1,有0为0;
  2. 按位或|:全0为0,有1为1;
  3. 按位取反~:把1变为0,0变为1;
     0x前缀的数字为十六进制数字,printf能够格式化输出内容,%x表示按照十六进制输出。
  4. 按位异或^:同0或同1则为0,相异则为1。

移位运算符

  移位运算符有三个:<<、>>、>>>

  1. 左移<<:最左侧的一位不要了,最右侧补0;
  2. 右移>>:最右侧的一位不要了,在左侧补充符号位;
  3. 无符号右移>>>:最右侧的一位不要了,最左侧补0;
      左移1位,相当于原数字2,左移N位,相当于原数字2的N次方;
      右移1位,相当于原数字/2,右移N位,相当于元数字/2的N次方;
      由于计算机计算移位效率高于基本四则运算,当某个代码正好除2的N次方的时候可以用移位运算代替;
      移动负数位或移位位数过大都没有意义。

条件运算符

  条件运算符只有一个:表达式1?表达式2:表达式3;
  当表达式1的值为true时,整个表达式的值为表达式2的值,当表达式1的值为false是,整个表达式的值为表达式3的值。

注释

  注释是为了让代码更加容易被读懂而附加的描述信息,不参与编译运行满是却非常重要。代码不仅仅是写出来给别人看的,更是为了让三个月后的自己看懂自己写的代码。

基本规则

  单行注释://注释内容(使用最多)
  多行注释:/*注释内容*/(不推荐)
  文档注释:/**文档注释*/(常见于方法和类之上的描述方法和类的作用)

注释规范

  内容准确:注释内容要和代码一直、匹配,并在代码修改时及时更新;
  篇幅合理:注释既不应该太精简,也不应该长篇大论;

关键字

  用于定义访问权限修饰符的关键字:private、protected、public
  用于定义类、函数、变量修饰符的关键字:abstract、final、static、synchronized
  用于定义类与类之间关系的关键字:extends、implements
  用于定义建立实例及引用实例,判断实例的关键字:new、this、super、instanceof
  用于异常处理的关键字:try、catch、finally、throw、throws
  用于包的关键字:package、import
  其他修饰符关键字:native、strictfp、transient、volatile、assert


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

相关文章

ChatGPT实战100例 - (05) ChatGPT 结合 Mermaid 的 Gantt 图表示

文章目录 ChatGPT实战100例 - (05) ChatGPT 结合 Mermaid 的 Gantt 图表示一、需求与思路二、辨析概念三、图形展示四、总结1. 为什么不使用PlantUML&#xff1f;2. Gantt图是这样用的么&#xff1f;3. Gantt图的主要使用场景&#xff1f; ChatGPT实战100例 - (05) ChatGPT 结合…

「数据库、数据库连接池、数据源」这些概念你真的理解了吗?

前言 我学习的过程中&#xff0c;对于连接池和数据源分得不是很清楚&#xff0c;而且我发现有的人将数据库等同于数据源&#xff0c;或者将数据源等同于连接池&#xff0c;实际上这些说法并不准确。 在某次工作中&#xff0c;同事 A 说道&#xff0c;这个数据源不行&#xff0…

常见分布式锁4:zookeeper 瞬时znode节点 + watcher监听机制,ChatGPT回复的解决死锁的方案

原文地址在这里 临时节点具备数据自动删除的功能。当client与ZooKeeper连接和session断掉时&#xff0c;相应的临时节点就会被删除。zk有瞬时和持久节点&#xff0c;瞬时节点不可以有子节点。会话结束之后瞬时节点就会消失&#xff0c;基于zk的瞬时有序节点实现分布式锁&#x…

科技云报到:存储开源,风雨飘摇下“披着羊皮的狼”?

科技云报道原创。 这些年开源界的风风雨雨&#xff0c;时不时撼动着人们的内心。 2022年&#xff0c;俄乌冲突导致全球最大的独立开源软件公司SUSE、美国开源软件巨头Redhat、主流开源容器引擎Docker&#xff0c;纷纷宣布停止与俄罗斯的合作。 而全球最大的开源及私有代码项目…

socket 及 字节序转换(嵌入式学习)

socket 及 字节序转换 socket简介Socket为什么需要Socket&#xff1f;socket类型Socket通信模型 字节序主机字节序到网络字节序网络字节序到主机字节序IP地址转换 socket简介 1、1982 - Berkeley Software Distributions 操作系统引入了socket作为本地进程之间通信的接口 2、1…

Linux 服务简单优化

硬件优化 处理器&#xff1a;核心数、主频、制程工艺、线程数、缓存等 核心数&#xff1a;1、2、4、6、8、12、24、32等 主频&#xff1a;2.0GHz、2.3GHz等等 制程工艺&#xff1a;22nm、14nm、10nm等等 线程数&#xff1a;1、2 缓存&#xff1a;L1、L2、L3 建议&#xff1a;尽…

Linux用户的分类与家目录,ls、pwd、cd、mkdir、touch、rmdir、rm指令与选项等

Linux中用户的分类与用户的家目录 在Linux当中&#xff0c;用户的分类只分为两类&#xff0c;一类叫做超级用户root&#xff0c;还有就是其他也就是传说中的普通用户。我们刚刚登进去时&#xff0c;默认所处的目录是***/root或者/home/用户名***&#xff0c;比如说/root, /hom…

知识库管理系统对于企业有哪些作用及优势?

知识库管理系统是一种通过集成多种技术手段&#xff0c;将企业内部知识进行收集、整理、存储、分析和共享的信息管理系统。知识库管理系统可以帮助企业管理和利用企业内部的知识&#xff0c;提高企业的创新能力和竞争力。 知识库管理系统的作用 1、促进企业内部知识的流通和共…

无线传感器网络硬件设计简介

无线传感器网络硬件设计简介 无线传感器网络因其巨大的应用前景越来越受到学术界和工业界的广泛关注。本文介绍了无线传感器网络节点的体系结构&#xff0c;分析比较了国内外当前典型的硬件平台&#xff0c;重点讨论了目前无线传感器网络节点常用的处理器、射频芯片、电源和传…

Java IO流

Java IO流 IO就是Intput和Output也就是输入输出&#xff0c;将数据输入到计算机内存的过程叫做输入&#xff0c;从内存读取出来的数据叫做输出。Java的IO流总共有40多个类&#xff0c;他们都是由下个4个抽象类派生出来的&#xff0c;InputStream和Read和OutputStream和Writer。…

网络拥塞控制,对越远的流量越宽容

考虑下面的网络传输场景&#xff1a; ​ S1&#xff0c;S2&#xff0c;S3&#xff0c;S4 向 D 方向发送&#xff0c;R4 发生拥塞。R4 必须丢弃一些数据进行疏导反馈拥塞信号&#xff0c;否则谁也过不去。 优先丢掉离得最近的 S4 的数据&#xff0c;其次依次丢 S3&#xff0c;S2…

ChatGPT会如何改变制造业?

来源 | Smart Industry Edgenesis编译 ChatGPT最新版本的发布成为热门头条。OpenAI表示该版本的ChatGPT能够在多个专业测试中达到“人类水平”的表现&#xff0c;例如司法考试和SAT考试。不过&#xff0c;在工业领域中&#xff0c;ChatGPT能够发挥怎样的作用呢&#xff1f;Sma…

计算广告(十七)

多渠道组合路径效率评价 ​ 编辑切换为居中 添加图片注释&#xff0c;不超过 140 字&#xff08;可选&#xff09; 分析背景&#xff1a; 电商归因分析通常以 last_click 为基准&#xff0c;将成交转化归功于用户完成转化前的最近一个广告系列。然而&#xff0c;在此之前&a…

HTTP的那些事儿

超文本传输协议&#xff08;Hyper Text Transfer Protocol&#xff0c;HTTP&#xff09;&#xff0c;它是在计算机世界中的两个点之间传递文本&#xff0c;图片&#xff0c;多媒体等超文本文件的协议。HTTP处在数据链路层&#xff0c;网络层&#xff0c;传输层&#xff0c;应用…

java 资料地址汇总

1 SpringBoot - 使用 Assert 校验让业务代码更简洁 SpringBoot - 使用 Assert 校验让业务代码更简洁 2 MyBatis-Plus 还手写 Join 联表查询&#xff1f;一个依赖轻松搞定&#xff0c;真香&#xff01; MyBatis-Plus 还手写 Join 联表查询&#xff1f;一个依赖轻松搞定&#…

中小企业面临怎样的数字化转型局面

当前&#xff0c;我国经济长期向好的基本面没有改变&#xff0c;但承受着“需求收缩、供给冲击、预期减弱”的三重压力&#xff0c;中小企业的数字化转型之路较之以往更加艰难、曲折。为帮助中小企业纾困解难、平稳渡过危机&#xff0c;需进一步优化政策“组合拳”&#xff0c;…

CMake

CMake定义 CMake是一个跨平台的安装&#xff08;编译&#xff09;工具&#xff0c;可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile或者project文件&#xff0c;能测试编译器所支持的C特性,类似UNIX下的automake。只是 CMake 的组态档取名为 C…

背包问题——01背包|完全背包

目录 前言&背包问题的历史 01背包 1、题目 2、暴力解01背包 Ⅰ、代码 3、动态规划解01背包 Ⅰ、二维dp数组解01背包 1&#xff09;dp数组的含义 2&#xff09;递推公式 3&#xff09;dp数组的初始化 4&#xff09;遍历顺序的讨论 5、代码 Ⅱ、一维数组解01背包 1&…

[API]集合Collection常用方法集合遍历新循环泛型(三)

什么是集合&#xff1a; 集合和数组一样&#xff0c;可以保存一组数据&#xff0c;并且提供了操作数组元素的相关方法&#xff0c;使用用更加方便 集合框架中的相关接口&#xff1a; java.util.Collection接口&#xff1a;是所有集合的顶级接口&#xff0c;封装了所有集合所…

【理解 C++ 中的头文件和源文件的作用 】

include文件中定义 src文件中声明 头文件中应该只放变量和函数的声明&#xff0c;而不能放它们的定义。 在 C 中&#xff0c;头文件和源文件有着不同的作用。它们共同组成了 C 项目的基本结构。让我们逐个了解它们的作用。 头文件&#xff08;.h 或 .hpp 文件&#xff09;&a…