搜索
首页Javajava教程[Java入门笔记]Java语言基础(三):运算符

简介

运算符是一种特殊的符号,运算符是通过一定的运算规则操作一个或多个操作数,并生成结果的特定符号,运算符和操作数的有效组合称为表达式。

java中运算符主要分为以下几类:

赋值运算符

算术运算符

关系运算符

逻辑运算符

条件运算符(三目运算符)

位运算符

赋值运算符

赋值运算符用于给变量或者常量指定值,赋值运算符的符号是"="。

int a = 1;  //定义时直接赋值int b;int c;
b = 
c = 2;  //可以在一个语句内为多个变量赋值
int d = b + 3;   //变量运算后再赋值,先执行右边,再执行左边

算术运算符

Java支持加减乘除和求余等基本数学运算。分别是以下几种:

86.png

加法运算符:+

double a = 1.1;double b = 1.2;double sum = a + b;
System.out.PRintln(sum);  //输出2.3

减法运算符:-

double a = 2.2;double b = 1.1;double sub = a - b;
System.out.println(sub);  //输出1.1

乘法运算符:*

int a = 11;double b = 1.2;double multiply = a * b;
System.out.println(multiply);  //输出1.32

除法运算符:/

除法运算符有点特殊:如果运算的两个值都是int,得到的结果也是int类型,会把小数点直接去掉,也不会四舍五入

int a = 10;int b = 4;double c = a/b; System.out.println(c);  //10初4本来结果是2.5,但是两个int类型数相除结果是int类型数,尽管将结果值赋给了double,
              //但输出结果变成了2.0,相当于运算完成时将小数点给去了,再转换为2.0double a2 = 5.2;double b2 = 3.1;double c2 = a2/b2; System.out.println(c2);  //两个double值运算,输出结果:1.6774193548387097System.out.println(5 / 0.0);  //除数为double型0.0,输出负无穷大System.out.println(5 / 0);  //除数为0,运行时会报错

求余运算符:%

int a = 5;int b = 3;double c = 3.2;
System.out.println(a%b);  //输出2System.out.println(a%c);  //1.7999999999999998System.out.println(0%5);  //输出0System.out.println(5%0);  //运行会出错

求负:-

int i = -1;int i2 = -i;
System.out.println(i2);  //输出1

自加:++

int i = 1;
i++;  //相当于将i的值加1;System.out.println(i); //输出2

自加符号既可以放在变量前面,也可以放在变量后面,放在前面先把操作数加1,再进行表达式的运算,放在后面则相反。

int i1 = 1;int i2 = 1;int i3 = i1++;  //此时i3的值为1,i1的值为2;它是先将i1的值赋给了i3,再将i1加1;int i4 = ++i2;  //此时i4的值为2,i2的值也为2;它是先将i2的值加1,再将值赋给i4;

自减:--

作用类似于自加

int i1 = 1;int i2 = 1;int i3 = i1++;  //此时i3的值为1,i1的值为0;它是先将i1的值赋给了i3,再将i1减1;int i4 = ++i2;  //此时i4的值为0,i2的值也为0;它是先将i2的值减1,再将值赋给i4;

关系运算符(比较运算符)

关系运算符可以测试两个操作数之间的关系(但不会改变操作数的值),关系表达式的结果为boolean型true/false:

87.png

System.out.println(4 == 4);  //结果为trueSystem.out.println(4 != 3);  //结果为trueSystem.out.println(true == false);  //结果为false

逻辑运算符

逻辑运算符用于操作boolean类型的变量或常量

88.png

看例子

System.out.println(!true);  //结果为falseSystem.out.println(2 > 1 && 1 > 1); //结果为falseSystem.out.println(2 > 1 || 1 > 1); //结果为trueSystem.out.println(true ^ false);  //结果为true,异或,相当于把第一个前面一个值true取反,再进行“或”运算

 

下面我们来看一下 |于||的区别

int a = 1;int b = 1;if(a == 1 | b++ > 1){
   System.out.println(b);  //输出b的值为2,按位或虽然|符号左边结果为true,但依然会执行|符号右边的代码}

 

 将|改为||

int a = 1;int b = 1;if(a == 1 || b++ > 1){
   System.out.println(b);  //输出b的值为1,||符号左边结果为true,不会再执行||符号右边的代码}

 

 条件运算符(三目运算符)

它的一般形式是:

  表达式1 ? 表达式2 : 表达式3

根据表达式1的结果来判断执行表达式2还是表达式3,如果表达式1的结果为true,则执行表达式2,否则执行表达式3;

条件运算符在某些情况下能够替代小型的if…else语句。

String s = 1 > 2 ? "1大于2" : "1不大于2";
System.out.println(s); //输出 1不大于2

位运算符

位运算符既参加运算的两个数据,按二进制位进行运算。Java的位运算符有如下7个:按位与(&)、按位或(|)、按位非(~)、按位异或(^)、左移运算符(2c0b1cb2141f6c08b3aee8ee42faee50>)、无符号右移运算符(>>>)。

具体介绍可以参考下面这篇文章:

http://www.cnblogs.com/yezhenhan/archive/2012/06/20/2555849.html

 

运算符的优先级

很多情况下,一个表达式由多个运算符组成,优先级决定运算符的计算顺序:

89.png

尽管运算符有优先级,一个表达式中会根据表达式运算符的优先级进行先后运算,但是在实际编程中如果一个表达式很长也不会推荐这样写,而是分为几步写,因为写在一起可读性太差。

 以上就是[Java入门笔记]Java语言基础(三):运算符的内容,更多相关内容请关注PHP中文网(www.php.cn)!


声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
Java语言中的智慧农业应用开发介绍Java语言中的智慧农业应用开发介绍Jun 10, 2023 am 11:21 AM

随着时代的发展,农业领域也开始借助现代科技手段升级转型,智慧农业也因此应运而生。Java作为一种性能优异、可移植性强的计算机编程语言,具备着较高的普及度和应用价值,成为智慧农业应用开发的重要解决方案之一。本文旨在介绍Java语言中智慧农业应用的开发流程、应用场景和优势点等方面的内容。一、Java语言中智慧农业应用的开发流程智慧农业应用的开发流程分为需求分析、

如何在Java中将JSON数组转换为CSV?如何在Java中将JSON数组转换为CSV?Aug 21, 2023 pm 08:27 PM

JSON可以用作数据交换格式,它是轻量级的且与语言无关。一个JSONArray可以解析文本字符串以生成类似于向量的对象,并支持java.util.List接口。我们可以使用org.json.CDL类将JSON数组转换为CSV格式,它提供了一个静态方法toString(),用于将JSONArray转换为逗号分隔的文本。我们需要导入org.apache.commons.io.FileUtils包,以使用writeStringToFile()方法将数据存储在CSV文件中。语法publicstaticj

ChatGPT Java:如何构建一个精准的语义搜索引擎ChatGPT Java:如何构建一个精准的语义搜索引擎Oct 24, 2023 am 10:21 AM

ChatGPTJava:如何构建一个精准的语义搜索引擎,需要具体代码示例引言:随着互联网的迅速发展,信息爆炸式增长,人们在获取所需信息的过程中,往往会遇到搜索结果质量不佳、不准确的问题。为了提供更精准、高效的搜索结果,语义搜索引擎应运而生。本文将介绍如何使用ChatGPTJava构建一个精准的语义搜索引擎,并给出具体的代码示例。一、了解ChatGPTJ

Java语言中的图像处理算法介绍Java语言中的图像处理算法介绍Jun 10, 2023 pm 10:03 PM

Java语言中的图像处理算法介绍随着数字化时代的到来,图像处理已经成为了计算机科学中的一个重要分支。在计算机中,图像是以数字形式存储的,而图像处理则是通过对这些数字进行一系列的算法运算,改变图像的质量和外观。Java语言作为一种跨平台的编程语言,其丰富的图像处理库和强大的算法支持,使得它成为了很多开发者的首选。本文将介绍Java语言中常用的图像处理算法,以及

Java中的二叉树结构详解Java中的二叉树结构详解Jun 16, 2023 am 08:58 AM

二叉树是计算机科学中常见的数据结构,也是Java编程中常用的一种数据结构。本文将详细介绍Java中的二叉树结构。一、什么是二叉树?在计算机科学中,二叉树是一种树形结构,每个节点最多有两个子节点。其中,左侧子节点比父节点小,右侧子节点则比父节点大。在Java编程中,常用二叉树表示排序,搜索以及提高对数据的查询效率。二、Java中的二叉树实现在Java中,二叉树

Java语言中的金融应用开发介绍Java语言中的金融应用开发介绍Jun 10, 2023 pm 02:01 PM

Java语言是一种广泛应用于金融领域的编程语言。由于其强大的功能和高效的性能,Java语言成为了金融机构开发软件的首选语言。本文将介绍Java语言在金融应用开发中的重要性,并介绍一些常见的金融应用程序。一、Java语言在金融领域中的应用Java语言在金融领域中的应用已经十分广泛,其主要优势包括:1.跨平台能力Java语言具有跨平台能力,这意味着同一段Java

Java语言中的Spring Cloud框架介绍Java语言中的Spring Cloud框架介绍Jun 09, 2023 pm 10:54 PM

Java语言中的SpringCloud框架介绍随着云计算和微服务的流行,SpringCloud框架成为了Java语言中构建云原生应用的首选框架之一。本文将介绍SpringCloud框架的概念和特点,以及如何使用SpringCloud构建微服务架构。SpringCloud简介SpringCloud框架是基于SpringBoot的微服务框架。它为

Java语言下对接百度AI接口实现图像风格迁移的方法与步骤Java语言下对接百度AI接口实现图像风格迁移的方法与步骤Aug 12, 2023 pm 04:00 PM

Java语言下对接百度AI接口实现图像风格迁移的方法与步骤引言:图像风格迁移是一种有趣的技术,在艺术和媒体创作中具有广泛的应用。百度AI提供了图像风格迁移的API,使开发者能够方便地使用这一功能。本文将介绍如何使用Java语言对接百度AI接口,实现图像风格迁移的方法与步骤,并提供示例代码。步骤一:申请百度AI接口的访问权限要使用百度AI提供的图像风格迁移AP

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具