第3天:Java基础语法(运算符与表达式)

 Java基础语法(运算符与表达式)

 1. 算术运算符

在Java中,算术运算符用于执行基本的数学运算。以下是Java中常用的算术运算符:

| 运算符 | 描述 | 例子 | 结果 |
| --- | --- | --- | --- |
| `+`  | 加法 | `5 + 3` | 8 |
| `-`  | 减法 | `5 - 3` | 2 |
| `*`  | 乘法 | `5 * 3` | 15 |
| `/`  | 除法 | `5 / 3` | 1 |
| `%`  | 取模(求余) | `5 % 3` | 2 |

 

public class ArithmeticOperators {public static void main(String[] args) {int a = 10;int b = 5;int c = a + b;int d = a - b;int e = a * b;int f = a / b;int g = a % b;System.out.println("10 + 5 = " + c);System.out.println("10 - 5 = " + d);System.out.println("10 * 5 = " + e);System.out.println("10 / 5 = " + f);System.out.println("10 % 5 = " + g);}
}


 

2. 比较运算符

比较运算符用于比较两个值,并根据比较结果返回`true`或`false`。

| 运算符 | 描述 | 例子 | 结果 |
| --- | --- | --- | --- |
| `==` | 等于 | `5 == 3` | false |
| `!=` | 不等于 | `5 != 3` | true |
| `>`  | 大于 | `5 > 3` | true |
| `<`  | 小于 | `5 < 3` | false |
| `>=` | 大于等于 | `5 >= 3` | true |
| `<=` | 小于等于 | `5 <= 3` | false |

 

public class ComparisonOperators {public static void main(String[] args) {int a = 10;int b = 5;System.out.println("10 == 5 ? " + (a == b));System.out.println("10 != 5 ? " + (a != b));System.out.println("10 > 5 ? " + (a > b));System.out.println("10 < 5 ? " + (a < b));System.out.println("10 >= 5 ? " + (a >= b));System.out.println("10 <= 5 ? " + (a <= b));}
}


 

3. 逻辑运算符

逻辑运算符用于根据两个布尔值(`true`或`false`)的真假性来决定最终的布尔值。

| 运算符 | 描述 | 例子 | 结果 |
| --- | --- | --- | --- |
| `&&` | 逻辑与 | `true && false` | false |
| `||` | 逻辑或 | `true || false` | true |
| `!`  | 逻辑非 | `!true` | false |

 

public class LogicalOperators {public static void main(String[] args) {boolean a = true;boolean b = false;System.out.println("true && false ? " + (a && b));System.out.println("true || false ? " + (a || b));System.out.println("!true ? " + (!a));}
}


 

4. 位运算符

位运算符对整数的二进制位进行操作。

| 运算符 | 描述 | 例子 | 结果 |
| --- | --- | --- | --- |
| `&`  | 位与 | `5 & 3`(二进制:101 & 011) | 1 |
| `|`  | 位或 | `5 | 3`(二进制:101 | 011) | 7 |
| `^`  | 位异或 | `5 ^ 3`(二进制:101 ^ 011) | 6 |
| `~`  | 位非 | `~5`(二进制:~101) | -6 |
| `<<` | 左移 | `5 << 1`(二进制:101 << 1) | 10 |
| `>>` | 右移 | `5 >> 1`(二进制:101 >> 1) | 2 |
| `>>>`| 无符号右移 | `5 >>> 1`(二进制:101 >>> 1) | 2 |

 

 
public class BitwiseOperators {public static void main(String[] args) {int a = 5;int b = 3;System.out.println("5 & 3 = " + (a & b));System.out.println("5 | 3 = " + (a | b));System.out.println("5 ^ 3 = " + (a ^ b));System.out.println("~5 = " + (~a));System.out.println("5 << 1 = " + (a << 1));System.out.println("5 >> 1 = " + (a >> 1));System.out.println("5 >>> 1 = " + (a >>> 1));}
}


```

 5. 三元运算符

三元运算符是一种简洁的if-else语句,格式为:`条件 ? 表达式1 : 表达式2`。

  

public class TernaryOperator {public static void main(String[] args) {int a = 10;int b = 20;int max = (a > b) ? a : b;System.out.println("Max value is " + max);}
}


 

 6. 字符串运算符

字符串运算符用于连接两个字符串。

| 运算符 | 描述 | 例子 | 结果 |
| --- | --- | --- | --- |
| `+`  | 字符串连接 | `"Hello, " + "World!"` | Hello, World! |

 

public class StringOperators {public static void main(String[] args) {String str1 = "Hello, ";String str2 = "World!";String str3 = str1 + str2;System.out.println(str3);}
}

 

7. 表达式求值与优先级

在Java中,表达式是由运算符和操作数组成的组合,可以产生一个值。表达式的求值遵循特定的优先级规则,即运算符优先级。

以下是Java中的运算符优先级(从高到低):

1. 后缀运算符:`()`、`[]`、`.`、`++`、`--`
2. 一元运算符:`++`、`--`、`+`、`-`、`~`、`!`
3. 乘法和除法:`*`、`/`、`%`
4. 加法和减法:`+`、`-`
5. 位移运算符:`<<`、`>>`、`>>>`
6. 关系运算符:`<`、`>`、`<=`、`>=`、`instanceof`
7. 相等性运算符:`==`、`!=`
8. 位与运算符:`&`
9. 位异或运算符:`^`
10. 位或运算符:`|`
11. 逻辑与运算符:`&&`
12. 逻辑或运算符:`||`
13. 条件运算符:`? :`
14. 赋值运算符:`=`、`+=`、`-=`、`*=`、`/=`、`%=`、`&=`、`^=`、`|=`、`<<=`、`>>=`、`>>>=`


public class ExpressionEvaluation {public static void main(String[] args) {int a = 10;int b = 20;int c = 30;// 根据优先级,先计算乘法,然后加法int result = a + b * c;System.out.println("Result: " + result);// 使用括号改变优先级int result2 = a + (b * c);System.out.println("Result with parentheses: " + result2);}
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/18603.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

人工智能技术的应用前景与我们的应对策略

​ 大家好&#xff0c;我是程序员小羊&#xff01; 随着人工智能&#xff08;AI&#xff09;技术的快速发展&#xff0c;其在社会生活、产业转型以及科技进步中发挥着日益重要的作用。AI正逐步改变着我们的生活和工作方式&#xff0c;同时也带来了技术和伦理上的诸多挑战。本文…

基于Java Springboot论坛系统

一、作品包含 源码数据库设计文档万字PPT全套环境和工具资源部署教程 二、项目技术 前端技术&#xff1a;Html、Css、Js、Vue、Element-ui 数据库&#xff1a;MySQL 后端技术&#xff1a;Java、Spring Boot、MyBatis 三、运行环境 开发工具&#xff1a;IDEA/eclipse 数据…

Vue2教程001:初识Vue

文章目录 1、初识Vue1.1、Vue2前言1.2、创建Vue实例1.3、插值表达式1.4 Vue响应式特性 1、初识Vue 1.1、Vue2前言 Vue是什么&#xff1f; 概念&#xff1a;Vue是一个用于构建用户界面的渐进式框架。 Vue的两种使用方式&#xff1a; Vue核心包开发 场景&#xff1a;局部模块…

113页PPT制造业研发工艺协同及制造一体化

研发工艺协同及制造一体化解决方案是制造业数字化转型的重要组成部分&#xff0c;它涵盖了从产品设计到生产的全过程&#xff0c;旨在提高生产效率、降低成本、提升产品质量&#xff0c;并增强企业的市场竞争力。以下是对该解决方案的详细阐述&#xff1a; 一、方案概述 研发…

红外遥控信号解码

红外遥控信号解码 之前就已经做过红外遥控的解码了&#xff0c;但是一直没有做记录&#xff0c;最近的项目又使用到了红外遥控&#xff0c;索性就把他捡起来记录一下&#xff0c;对于信号的解码&#xff0c;我一般的习惯都是先用逻辑分析仪抓取一下信号波形&#xff0c;然后对…

Spring:纯注解开发模式-Ioc对bean的管理

我们知道&#xff08;请见 注解开发定义bean&#xff09;&#xff0c;可以使用注解来配置bean,但是依然有用到配置文件&#xff0c;在配置文件中对包进行了扫描&#xff0c;Spring在3.0版已经支持纯注解开发 Spring3.0开启了纯注解开发模式&#xff0c;使用Java类替代配置文件…

赛元免费开发板申请

在作者网上冲浪的时候&#xff0c;突然发现了一个国内的良心企业&#xff0c;虽然现在不是很有名&#xff0c;但是他现在是有一个样品申请的活动&#xff0c;他就是国内的Redfine新定义&#xff0c;他申请的板子是用的赛元MCU&#xff0c;作者本着有板子就要申请的原则&#xf…

【编译】多图解释 什么是短语、直接短语、句柄、素短语、可归约串

一、什么是短语二、什么是“直接”短语&#xff1f;三、什么是句柄&#xff1f;四、什么是素短语&#xff1f;五、什么是最左素短语可归约串就是“最左素短语” 首先&#xff0c;这些概念 都是相对于【句型】的&#xff0c;都是相对于【句型】的&#xff0c;都是相对于【句型】…

基础IO2

文章目录 磁盘结构磁盘存储结构磁盘的逻辑结构引入文件系统理解文件系统inode 映射 data blocks文件名与inode的关系dentry树文件描述符与进程之间的关系 深刻理解软硬链接软链接硬链接 动静态库静态库1. 手动制作静态库2.调用静态库(1)安装到系统(2)自己指定查找路径(3)自己创…

RPC-健康检测机制

什么是健康检测&#xff1f; 在真实环境中服务提供方是以一个集群的方式提供服务&#xff0c;这对于服务调用方来说&#xff0c;就是一个接口会有多个服务提供方同时提供服务&#xff0c;调用方在每次发起请求的时候都可以拿到一个可用的连接。 健康检测&#xff0c;能帮助从连…

ZD Soft Screen Recorder:电脑录屏软件

前言 ZD Soft Screen Recorder 是一款屏幕录制软件 安装环境 [名称]&#xff1a;ZD Soft Screen Recorder [版本]&#xff1a;11.7.2 [大小]&#xff1a;6.8MB [语言]&#xff1a;英文 [环境]&#xff1a;pc 链接: 百度网盘 请输入提取码 提取码: ua23 软件界面 1、双击…

某杀软环境下的添加账户

某杀软环境下的添加账户 我们在某个杀软环境下&#xff0c;正常添加账户一般是会被直接拦截的 白&#xff0b;黑 在这个环境下&#xff0c;白&#xff0b;黑是最实用的绕过方式&#xff0c;我们可以通过调用winapi来创建账户&#xff0c;这些代码再存储到dll里面&#xff0c…

《Spring 基础之 IoC 与 DI 入门指南》

一、IoC 与 DI 概念引入 Spring 的 IoC&#xff08;控制反转&#xff09;和 DI&#xff08;依赖注入&#xff09;在 Java 开发中扮演着至关重要的角色&#xff0c;是提升代码质量和可维护性的关键技术。 &#xff08;一&#xff09;IoC 的含义及作用 IoC 全称为 Inversion of…

【C++】set,map,multiset,multimap的介绍和使用

set、map、multiset、multimap set、multiset的介绍和使用1、关联式容器2、键值对3、树形结构的关联式容器4、setset的介绍set的定义set的使用 5、multisetmultiset的介绍multiset的使用 map、multimap的介绍和使用1、map的介绍map的定义insert插入函数map的迭代器find查找函数…

Midjourney基础命令和提示词

1 基础命令 1.1 /imagine prompt 生成图片的核心命令&#xff0c;prompt 后输入描述。 /imagine prompt: A majestic dragon flying over a misty mountain, cinematic lighting, 4K resolution 高级提示 1.1.1 基本参数 图片比例 --ar 图片比例 混乱 Aspect Ratios --…

【代码pycharm】动手学深度学习v2-04 数据操作 + 数据预处理

数据操作 数据预处理 1.数据操作运行结果 2.数据预处理实现运行结果 第四课链接 1.数据操作 import torch # 张量的创建 x1 torch.arange(12) print(1.有12个元素的张量&#xff1a;\n,x1) print(2.张量的形状&#xff1a;\n,x1.shape) print(3.张量中元素的总数&#xff1…

智云-一个抓取web流量的轻量级蜜罐v1.5

智云-一个抓取web流量的轻量级蜜罐v1.5 github地址 https://github.com/xiaoxiaoranxxx/POT-ZHIYUN 新增功能-自定义漏洞信息 可通过正则来添加相关路由以及响应来伪造 nacos的版本响应如下 日流量态势 月流量态势 抓取流量效果

【Android原生问题分析】夸克、抖音划动无响应问题【Android14】

1 问题描述 偶现问题&#xff0c;用户打开夸克、抖音后&#xff0c;在界面上划动无响应&#xff0c;但是没有ANR。回到Launcher后再次打开夸克/抖音&#xff0c;发现App的界面发生了变化&#xff0c;但是仍然是划不动的。 2 log初分析 复现问题附近的log为&#xff1a; 用户…

2024年11月16日 星期六 重新整理Go技术

今日格言 坚持每天进步一点点~ 一个人也可以是一个团队~ 学习全栈开发, 做自己喜欢的产品~~ 简介 大家好, 我是张大鹏, 今天是2024年11月16日星期六, 很高兴在这里给大家分享技术. 今天又是休息的一天, 做了很多的思考, 整理了自己掌握的技术, 比如Java, Python, Golang,…

go-zero(一) 介绍和使用

go-zero 介绍和使用 一、什么是 go-zero&#xff1f; go-zero 是一个基于 Go 语言的微服务框架&#xff0c;提供了高效、简单并易于扩展的 API 设计和开发模式。它主要目的是为开发者提供一种简单的方式来构建和管理云原生应用。 1.go-zero 的核心特性 高性能&#xff1a; g…