Java 运算符详解与字符串处理技巧
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 |
比较运算符
比较运算符用于比较两个值(或变量)。这在编程中很重要,因为它帮助我们找到答案并做出决策。
比较的返回值是 true
或 false
。这些值称为布尔值
在下面的示例中,我们使用大于运算符(>)来判断 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 |
逻辑运算符
您还可以使用逻辑运算符测试 true
或 false
值
逻辑运算符用于确定变量或值之间的逻辑关系:
运算符 | 名称 | 描述 | 示例 |
---|---|---|---|
&& | 逻辑与 | 如果两个语句都为真,则返回真 | 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);
请注意,我们添加了一个空文本(" ")以在打印时在 firstName
和 lastName
之间创建一个空格。
您还可以使用 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 运算符详解与字符串处理技巧的更多相关文章
- java运算符详解
java运算符: 定义:用来指明对于操作数的运算方式 按照操作数数目分类: 单目运算 数目运算 三目运算 a++ a+b (a>b) ? ...
- C++调用JAVA方法详解
C++调用JAVA方法详解 博客分类: 本文主要参考http://tech.ccidnet.com/art/1081/20050413/237901_1.html 上的文章. C++ ...
- Java面向对象详解
Java面向对象详解 前言:接触项目开发也有很长一段时间了,最近开始萌发出想回过头来写写以前学 过的基础知识的想法.一是原来刚开始学习接触编程,一个人跌跌撞撞摸索着往前走,初学的时候很多东西理解的也懵 ...
- 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 ...
- java 泛型详解(普通泛型、 通配符、 泛型接口)
java 泛型详解(普通泛型. 通配符. 泛型接口) JDK1.5 令我们期待很久,可是当他发布的时候却更换版本号为5.0.这说明Java已经有大幅度的变化.本文将讲解JDK5.0支持的新功能---- ...
- Java synchronized 详解
Java synchronized 详解 Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码. 1.当两个并发线程访问同一个对象object ...
- Java 正则表达式详解_正则表达式
body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI& ...
- Java IO 详解
Java IO 详解 初学java,一直搞不懂java里面的io关系,在网上找了很多大多都是给个结构图草草描述也看的不是很懂.而且没有结合到java7 的最新技术,所以自己来整理一下,有错的话请指正, ...
- Java集合详解3:Iterator,fail-fast机制与比较器
Java集合详解3:Iterator,fail-fast机制与比较器 今天我们来探索一下LIterator,fail-fast机制与比较器的源码. 具体代码在我的GitHub中可以找到 https:/ ...
- Java泛型详解(转)
文章转自 importNew:Java 泛型详解 引言 泛型是Java中一个非常重要的知识点,在Java集合类框架中泛型被广泛应用.本文我们将从零开始来看一下Java泛型的设计,将会涉及到通配符处理 ...
随机推荐
- 【LeetCode哈希表#4】梦开始的地方:两数之和(map),以及关于容器map的一些代码技巧
两数之和 力扣题目链接(opens new window) 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种 ...
- 【Azure Data Lake Storage】如何才能保留Blob中的文件目录结构(即使文件夹中文件数量为0的情况下)?
问题描述 在使用Azure Storage Account Blob时候,发现当文件夹中的Blob(文件)被全部输出后,文件夹也会消失? 为什么它不能像Windows系统中的文件夹一样,即使是一个空文 ...
- docker 安装 es-head 以及Content-Type header请求头错误解决
拉取es-head镜像,启动 docker pull mobz/elasticsearch-head:5 docker run -itd --name es-head -p 9100:9100 mob ...
- 1、mysql-索引简介
1.1 MySQL官方对索引的定义为: 索引(index)是帮助MySQL高效获取数据的数据结构(有序).在数据之外,数据库系统还维护者满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数 ...
- Linux管理SpringBoot应用shell脚本实现
Liunx系统如何部署和管理SpringBoot项目应用呢?最简单的方法就是写个shell脚本. Spring Boot是Java的一个流行框架,用于开发企业级应用程序.下面我们将学习如何在Lin ...
- 开源好用的所见即所得(WYSIWYG)编辑器:Editor.js
@ 目录 特点 基于区块 干净的数据 界面与交互 插件 标题和文本 图片 列表 Todo 表格 使用 安装 创建编辑器实例 配置工具 本地化 自定义样式 今天介绍一个开源好用的Web所见即所得(WYS ...
- 协议SPI:四线同步全双工 W25Qxx
SPI传输速度快80M,富家子弟最简单最快速完成 SCK-时钟 MOSI主机输出(DO),从机输入 MISO(DI) SS Slave Select(CS Chip Select)从机选择线,低电平有 ...
- 摆脱鼠标系列 - Alt + N 快速切换vscode多个项目 - HotKeyP
摆脱鼠标系列 - Alt + N 快速切换vscode多个项目 用的软件是 HotKeyP 打开软件选择vscode vscode里面的 project那个插件也很好,但是需要打开vscode以后,这 ...
- Java递归实现全排列改进(一)---利用HashSet实现去重
import java.util.ArrayList; import java.util.Arrays; import java.util.HashSet; import java.util.Iter ...
- Spring Boot学习日记12
学习了Thymeleaf模板引擎前端交给我们的页面,是html页面.如果是我们以前开发,我们需要把他们转成jsp页面,jsp好处就是当我们查出一些数据转发到JSP页面以后,我们可以用jsp轻松实现数据 ...