一:Java运算符
在Java中,运算符可以分为以下四组:
算术运算符、位运算符、关系运算符、逻辑运算符
二:算术运算符
运算符 |
结果 |
+ |
加 |
- |
减 |
* |
乘 |
/ |
除 |
% |
取模 |
++ |
递增运算 |
-- |
递减运算 |
+= |
加法赋值 |
-= |
减法赋值 |
*= |
乘法赋值 |
/= |
除法赋值 |
%= |
取模赋值 |
算术运算符的操作数必须是数字类型的,即可以是(byte,short,int,long,float,double,char)。不能再boolean类型上使用它们,char实质是int类型的子集。
除法运算符应用到整形时,结果中将不包括小数部分。
模运算符%返回一个除法操作的余数。
++x:表示在x参与其他运算之前先自增1
x++:表示在x参与其他运算之后先自增1
--x:表示在x参与其他运算之前先自减1
x--:表示在x参与其他运算之后先自减1
例子:1.//文件名:Demo1.java
class Demo1 {
public static void main(String[] args) {
int a = 1;
int b = 2;
int c = 3;
a += 5;
System.out.println("a += 5 结果:" + a);
b *= 4;
System.out.println("b *= " + b);
c += a * b;
System.out.println("c += " + c);
c %= 6;
System.out.println("c %= " + c);
}
}
2.//文件名:Demo2.java
class Demo2 {
public static void main(String[] args) {
int a = 1;
int b = 2;
int c = 12;
int d = 50;
int e = 24;
int f = a + b * c - e / b + d + e + d * b / c;
System.out.println(f);
}
}
3.//文件名:Demo3.java
class Demo3 {
public static void main(String[] args) {
int a = 1;
int b = 2;
int c;
int d;
c = ++b; // c=3,b=3
d = a++; // d=1,a=2
c++; // 4
System.out.println("a = " + a);
System.out.println("b = " + b);
System.out.println("c = " + c);
System.out.println("d = " + d);
}
}
三:关系运算符
运算符 |
意义 |
解释 |
== |
等于 |
相等为true,否则为false |
!= |
不等于 |
不等为true,否则为false |
> |
大于 |
大于为true,否则为false |
< |
小于 |
小于为true,否则为false |
>= |
大于等于 |
大于等于为true,否则为false |
<= |
小于等于 |
小于等于为true,否则为false |
这些运算的结果都是一个boolean值,关系运算符常用在if语句和循环语句中。
例子://文件名:Demo4.java
class Demo4 {
public static void main(String[] args) {
int a = 3;
int b = 3;
short c = 5;
byte d = 3;
long e = 5;
char f = 'N';
double g = 6.01D;
float h = 6.01F;
boolean i = false;
boolean j = true;
// 把 a == b 运算的结果赋给x
boolean x = (a == b);
// 把 a != c 运算的结果赋给y
boolean y = (a != c);
// 把 g == h 运算的结果赋给z
boolean z = (g == h);
// 把 d != f 运算的结果赋给m
boolean m = (d != f);
// 把 e != f 运算的结果赋给n
boolean n = (e != f);
// 把 i == j 运算的结果赋给k
boolean k = (i == j);
System.out.println("a == b的值为:" + x);
System.out.println("a != c的值为:" + y);
System.out.println("g == h的值为:" + z);
System.out.println("i == j的值为:" + k);
System.out.println("d != f的值为:" + m);
System.out.println("e != f的值为:" + n);
}
}
//文件名:Demo5.java
class Demo5 {
public static void main(String[] args) {
int a = 6;
byte b = 100;
short c = 120;
long d = 100000L;
char e = 'B';
double f = 1.001D;
float g = 1.01F;
boolean x = (a > c);// 把a > c的运算结果赋给x; false
boolean y = (b >= 100); // 把b >= 100 的运算结果赋给y true
boolean z = (e < d);// 把e < d 的运算结果赋给z true
boolean k = (f <= g); // 把f <= g的运算结果赋给x true
System.out.println("a > b 的值为:" + x);
System.out.println("b >= 100 的值为:" + y);
System.out.println("e < d 的值为:" + z);
System.out.println("f <= g 的值为:" + k);
}
}
四:逻辑运算符
运算符 |
意义 |
& |
逻辑与 |
| |
逻辑或 |
^ |
逻辑异或 |
! |
逻辑非 |
|| |
短路或 |
&& |
短路与 |
X |
Y |
!X |
X&Y |
X|Y |
X^Y |
X&&Y |
X||Y |
true |
true |
false |
true |
true |
false |
true |
true |
true |
false |
false |
false |
true |
true |
false |
true |
false |
true |
true |
false |
true |
true |
false |
true |
false |
false |
true |
false |
false |
false |
false |
false |
例子://文件名:Demo6.java
class Demo6 {
public static void main(String[] args) {
boolean a = true;
boolean b = false;
boolean c = a | b; // 或
boolean d = a & b; // 与
boolean e = a ^ b; // 异或
boolean f = (!a & b) | (a & !b);
boolean g = !a; // 取反
System.out.println("a = " + a); // true
System.out.println("b = " + b); // false
System.out.println("a|b = " + c); // true
System.out.println("a & b = " + d); // false
System.out.println("a ^ b = " + e); // true
System.out.println("!a = " + g); // false
}
}
//文件名:Demo7.java
class Demo7 {
public static void main(String[] args) {
boolean a = true;
int b = 10;
int c = 0;
int d = 0;
if (a && b > 9) {
c = 100;
}
if (a || b > 19) {
d = 500;
}
System.out.println("c = " + c);
System.out.println("d = " + d);
}
}
五:三元运算符
Exp1 ? Exp2 : Exp3
Exp1表示一个布尔表达式,其值只能为true或false
Exp2表示任何一个表达式
Exp3表示任何一个表达式
示例://文件名:Demo7.java
class Demo7 {
public static void main(String[] args) {
int i;
i = 10;
int k = i < 0 ? 10 : 20;
System.out.println(k);
i = -10;
k = i < 0 ? 10 : 20;
System.out.println(k);
}
}
六:字符串连接运算符 +
“+”可以用于两个字符串进行连接操作
如:"Hello" + "Word"
分享到:
相关推荐
java第3章 运算符表达式和语句,相当好的东西,值得参考!希望对你有用!
10. **第三方库**: 有许多开源工具和库,如Apache Commons JEXL和Google的Guava,提供了强大的表达式解析和评估功能,扩展了Java标准库的功能。 11. **编译时与运行时计算**: Java允许在编译时和运行时计算表达式。...
本章“第3章:Java基础程序设计”着重讲解了运算符、表达式与语句这三个核心概念,它们是构建任何Java程序的基础。 首先,我们来探讨运算符。Java中的运算符用于执行特定的数学或逻辑操作。它们可以分为多种类型,...
Java正则表达式是Java编程语言中用于处理字符串的强大工具,它基于模式匹配的概念,能够高效地进行文本搜索、替换和解析。在Java中,正则表达式主要通过`java.util.regex`包来实现,提供了Pattern和Matcher两个核心...
我们可以使用递归下降解析法或者使用Java的`javacc`、`ANTLR`等第三方库来构建解析器。 在解析过程中,我们通常会创建一个**抽象语法树(Abstract Syntax Tree,AST)**,它是解析树的抽象形式,只保留语法结构,不...
Java中的Cron表达式解析通常是通过Spring框架的`org.springframework.scheduling.support.CronSequenceGenerator`类或者第三方库如Quartz的`org.quartz.CronExpression`来实现。 首先,让我们理解Cron表达式的格式...
Java正则表达式匹配工具是IT领域中一种强大的文本处理工具,它利用正则表达式(Regular Expression)的规则来查找、替换或者提取文本中的特定模式。正则表达式是一种特殊的字符序列,能够帮助程序员或者用户高效地...
Java 2实用教程第4版_第3章_运算符、表达式与语句.ppt
这个库不仅包含了标准Java API中的`java.util.regex`包,还可能包含了一些第三方库,如`automaton-1.11-7`,这可能是对Java正则表达式功能的一种扩展或优化。 正则表达式的语法是相当丰富的,包括字符类(如`\d`...
一个常见的第三方库是Apache Commons Math,它提供了一个`org.apache.commons.math3.expr`包,包含了用于解析和评估数学表达式的工具。这个库允许开发者处理包含变量、常量、函数和运算符的复杂表达式。使用Apache ...
例如,`"(19|20)\d\d([- /.])(0[1-9]|1[012])\2(0[1-9]|[12][0-9]|3[01])"`是一个用于匹配日期格式的正则表达式,可以匹配如"1900-01-01"这样的日期。 在Java中,由于反斜杠`\`在字符串字面量中有特殊含义,因此在...
总结起来,这个压缩包提供的资源涵盖了从基本的算术表达式求值到使用第三方库(如JEP)实现复杂表达式计算的多个方面。通过学习和实践,开发者可以掌握在Java环境中处理动态算术表达式的方法,并能应用于各种需要...
这个表达式会匹配以1开头,第二位是3到9之间任意数字,后面跟着9个数字的字符串。 4. **邮箱验证**: 邮箱验证的正则表达式通常比较复杂,以适应各种可能的合法格式。一个常用的表达式如下: ```regex ^[a-zA-Z...
Java正则表达式是编程语言中的一个重要组成部分,用于文本处理和模式匹配。Jakarta ORO(Oracle Regular Expressions for Java)是Apache软件基金会开发的一个强大的Java正则表达式库,它为开发者提供了更为灵活和...
Java正则表达式是Java编程语言中用于处理字符串的强大工具,它允许程序员通过模式匹配来查找、替换或分割文本。在Java中,正则表达式是通过`java.util.regex`包提供的API来实现的。本讲解将深入探讨Java正则表达式的...
在Java中使用正则表达式可以通过内置的支持或者使用第三方库,如Jakarta-ORO库。Jakarta-ORO是一个开源项目,提供了丰富的正则表达式API。 ##### 2.1 安装Jakarta-ORO库 首先需要从Apache官网或者其他可信源下载...
根据给定的文件信息,我们可以总结出以下关于Java正则表达式的重要知识点: ### 1. 正则表达式简介 正则表达式是一种强大的文本处理工具,它能够帮助我们匹配、查找、替换等操作符合某种规则的字符串。在Java中,...
虽然在Java规范需求(Specification Request)中正则表达式的支持是在后续版本引入的,但在早期版本中,开发者可以通过第三方库如Apache的Jakarta-ORO来实现正则表达式功能。 正则表达式的基础知识包括以下几个关键...
自己写的一个计算字符串表达式工具类; Java 工具类, 计算字符串表达式, 支持 +,-,*,/,%. ()