Java 运算符

算术运算符

算术运算符用于执行常见的数学运算。

运算符 名称 描述 示例
+ 加法 将两个值相加 x + y
- 减法 从一个值中减去另一个值 x - y
* 乘法 将两个值相乘 x * y
/ 除法 将一个值除以另一个值 x / y
% 取模 返回除法余数 x % y
++ 自增 将变量的值增加1 ++x
-- 自减 将变量的值减少1 --x

赋值运算符

赋值运算符用于将值赋给变量。

在下面的示例中,我们使用赋值运算符(=)将值 10 赋给一个名为 x 的变量:

int x = 10;

加法赋值运算符(+=)将一个值添加到一个变量中:

int x = 10;
x += 5;

所有赋值运算符的列表:

运算符 示例 相当于
= x = 5 x = 5
+= x += 3 x = x + 3
-= x -= 3 x = x - 3
*= x *= 3 x = x * 3
/= x /= 3 x = x / 3
%= x %= 3 x = x % 3
&= x &= 3 x = x & 3
= x
^= x ^= 3 x = x ^ 3
>>= x >>= 3 x = x >> 3
<<= x <<= 3 x = x << 3

比较运算符

比较运算符用于比较两个值(或变量)。这在编程中很重要,因为它帮助我们找到答案并做出决策。

比较的返回值是 truefalse。这些值称为布尔值

在下面的示例中,我们使用大于运算符(>)来判断 5 是否大于 3:

int x = 5;
int y = 3;
System.out.println(x > y); // 返回 true,因为 5 大于 3
运算符 名称 示例
== 等于 x == y
!= 不等于 x != y
> 大于 x > y
< 小于 x < y
>= 大于或等于 x >= y
<= 小于或等于 x <= y

逻辑运算符

您还可以使用逻辑运算符测试 truefalse

逻辑运算符用于确定变量或值之间的逻辑关系:

运算符 名称 描述 示例
&& 逻辑与 如果两个语句都为真,则返回真 x < 5 && x < 10
|| 逻辑或 如果其中一个语句为真,则返回真 x < 5 || x < 4
! 逻辑非 反转结果,如果结果为真,则返回假 !(x < 5 && x < 10)

Java 字符串

字符串用于存储文本。

一个字符串变量包含由双引号括起来的字符集合:

// 创建一个 String 类型的变量并为其赋值:
String greeting = "Hello";

字符串长度

在 Java 中,字符串实际上是一个对象,它包含可以对字符串执行某些操作的方法。例如,可以使用 length() 方法找到字符串的长度:

String txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
System.out.println("The length of the txt string is: " + txt.length());

更多字符串方法

有许多字符串方法可用,例如 toUpperCase()toLowerCase()

String txt = "Hello World";
System.out.println(txt.toUpperCase()); // 输出 "HELLO WORLD"
System.out.println(txt.toLowerCase()); // 输出 "hello world"

在字符串中查找字符

indexOf() 方法返回字符串中指定文本的第一次出现的索引(位置)(包括空格):

String txt = "Please locate where 'locate' occurs!";
System.out.println(txt.indexOf("locate")); // 输出 7

Java 从零开始计算位置。

0 是字符串中的第一个位置,1 是第二个位置,2 是第三个位置

完整的字符串参考

该参考包含所有字符串方法的描述和示例。

Java 字符串连接

+ 运算符可以在字符串之间使用以将它们合并。这称为连接:

String firstName = "John";
String lastName = "Doe";
System.out.println(firstName + " " + lastName);

请注意,我们添加了一个空文本(" ")以在打印时在 firstNamelastName 之间创建一个空格。

您还可以使用 concat() 方法连接两个字符串:

String firstName = "John ";
String lastName = "Doe";
System.out.println(firstName.concat(lastName));

Java 数字和字符串

数字和字符串的相加

警告!

Java 使用 + 运算符既用于加法又用于连接。

  • 数字相加。
  • 字符串连接。

如果您相加两个数字,结果将是一个数字:

int x = 10;
int y = 20;
int z = x + y; // z 将是30(一个整数/数字)

如果您相加两个字符串,结果将是字符串连接:

String x = "10";
String y = "20";
String z = x + y; // z 将是1020(一个字符串)

如果您相加一个数字和一个字符串,结果将是字符串连接:

String x = "10";
int y = 20;
String z = x + y; // z 将是1020(一个字符串)

Java 特殊字符

由于字符串必须用引号括起来,Java 将误解此字符串并生成错误:

String txt = "We are the so-called "Vikings" from the north.";

避免此问题的解决方案是使用反斜杠转义字符。

反斜杠(\)转义字符将特殊字符转换为字符串字符:

  • \' 单引号
  • \" 双引号
  • \\ 反斜杠

序列 \" 在字符串中插入双引号:

String txt = "We are the so-called \"Vikings\" from the north.";

序列 \' 在字符串中插入单引号:

String txt = "It\'s alright.";

序列 \\ 在字符串中插入反斜杠:

String txt = "The character \\ is called backslash.";

Java 中还有其他一些常见的转义序列:

  • \n 换行符
  • \r 回车符
  • \t 制表符
  • \b 退格符
  • \f 换页符

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎 点赞、收藏、关注

Java 运算符详解与字符串处理技巧的更多相关文章

  1. java运算符详解

    java运算符: 定义:用来指明对于操作数的运算方式 按照操作数数目分类: 单目运算    数目运算    三目运算 a++              a+b           (a>b) ? ...

  2. C++调用JAVA方法详解

    C++调用JAVA方法详解          博客分类: 本文主要参考http://tech.ccidnet.com/art/1081/20050413/237901_1.html 上的文章. C++ ...

  3. Java面向对象详解

    Java面向对象详解 前言:接触项目开发也有很长一段时间了,最近开始萌发出想回过头来写写以前学 过的基础知识的想法.一是原来刚开始学习接触编程,一个人跌跌撞撞摸索着往前走,初学的时候很多东西理解的也懵 ...

  4. java 乱码详解_jsp中pageEncoding、charset=UTF -8"、request.setCharacterEncoding("UTF-8")

    http://blog.csdn.net/qinysong/article/details/1179480 java 乱码详解__jsp中pageEncoding.charset=UTF -8&quo ...

  5. java 泛型详解(普通泛型、 通配符、 泛型接口)

    java 泛型详解(普通泛型. 通配符. 泛型接口) JDK1.5 令我们期待很久,可是当他发布的时候却更换版本号为5.0.这说明Java已经有大幅度的变化.本文将讲解JDK5.0支持的新功能---- ...

  6. Java synchronized 详解

    Java synchronized 详解 Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码. 1.当两个并发线程访问同一个对象object ...

  7. Java 正则表达式详解_正则表达式

    body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI& ...

  8. Java IO 详解

    Java IO 详解 初学java,一直搞不懂java里面的io关系,在网上找了很多大多都是给个结构图草草描述也看的不是很懂.而且没有结合到java7 的最新技术,所以自己来整理一下,有错的话请指正, ...

  9. Java集合详解3:Iterator,fail-fast机制与比较器

    Java集合详解3:Iterator,fail-fast机制与比较器 今天我们来探索一下LIterator,fail-fast机制与比较器的源码. 具体代码在我的GitHub中可以找到 https:/ ...

  10. Java泛型详解(转)

    文章转自  importNew:Java 泛型详解 引言 泛型是Java中一个非常重要的知识点,在Java集合类框架中泛型被广泛应用.本文我们将从零开始来看一下Java泛型的设计,将会涉及到通配符处理 ...

随机推荐

  1. 【LeetCode哈希表#4】梦开始的地方:两数之和(map),以及关于容器map的一些代码技巧

    两数之和 力扣题目链接(opens new window) 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种 ...

  2. 【Azure Data Lake Storage】如何才能保留Blob中的文件目录结构(即使文件夹中文件数量为0的情况下)?

    问题描述 在使用Azure Storage Account Blob时候,发现当文件夹中的Blob(文件)被全部输出后,文件夹也会消失? 为什么它不能像Windows系统中的文件夹一样,即使是一个空文 ...

  3. docker 安装 es-head 以及Content-Type header请求头错误解决

    拉取es-head镜像,启动 docker pull mobz/elasticsearch-head:5 docker run -itd --name es-head -p 9100:9100 mob ...

  4. 1、mysql-索引简介

    1.1 MySQL官方对索引的定义为: 索引(index)是帮助MySQL高效获取数据的数据结构(有序).在数据之外,数据库系统还维护者满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数 ...

  5. Linux管理SpringBoot应用shell脚本实现

    ​ Liunx系统如何部署和管理SpringBoot项目应用呢?最简单的方法就是写个shell脚本. Spring Boot是Java的一个流行框架,用于开发企业级应用程序.下面我们将学习如何在Lin ...

  6. 开源好用的所见即所得(WYSIWYG)编辑器:Editor.js

    @ 目录 特点 基于区块 干净的数据 界面与交互 插件 标题和文本 图片 列表 Todo 表格 使用 安装 创建编辑器实例 配置工具 本地化 自定义样式 今天介绍一个开源好用的Web所见即所得(WYS ...

  7. 协议SPI:四线同步全双工 W25Qxx

    SPI传输速度快80M,富家子弟最简单最快速完成 SCK-时钟 MOSI主机输出(DO),从机输入 MISO(DI) SS Slave Select(CS Chip Select)从机选择线,低电平有 ...

  8. 摆脱鼠标系列 - Alt + N 快速切换vscode多个项目 - HotKeyP

    摆脱鼠标系列 - Alt + N 快速切换vscode多个项目 用的软件是 HotKeyP 打开软件选择vscode vscode里面的 project那个插件也很好,但是需要打开vscode以后,这 ...

  9. Java递归实现全排列改进(一)---利用HashSet实现去重

    import java.util.ArrayList; import java.util.Arrays; import java.util.HashSet; import java.util.Iter ...

  10. Spring Boot学习日记12

    学习了Thymeleaf模板引擎前端交给我们的页面,是html页面.如果是我们以前开发,我们需要把他们转成jsp页面,jsp好处就是当我们查出一些数据转发到JSP页面以后,我们可以用jsp轻松实现数据 ...