Java运算符

Java运算符

Java中的运算符分为以下几种:

  • 算术运算符
  • 赋值运算符
  • 比较运算符
  • 逻辑运算符
  • 三元运算符

算术运算符

算术运算符包括以下几种:

  • +,加法
  • -,减法
  • *,乘法
  • /,除法
  • %,取余
  • ++,自增
  • --,自减

不同类型的数据之间进行运算,得到的结果的数据类型为范围最大的那个数据类型,如:

double d = 2 + 3.5; //int + double ==> double
int i = 2 + 3.5; //该写法错误

加法有两种作用:

  • 两数字间进行加法运算
  • 字符串的连接
int c = 3 + 5;  //进行加法运算,结果为8
String s = "Hello" + "World"; //拼接为HelloWorld

注意:任何数据类型与字符串连接时,会自动变成字符串

String s = 1 + "Hello"; //1Hello

除法需要注意的是,两个整数相除,得到的还是整数,即使除不尽,如

int a = 10/3; //a = 3

下面重点介绍++--,由于二者十分的相似,这里只介绍++++的作用是自动加1,如

int a = 3;
a++; //相当于a = a + 1 a变为了4

其中++可以在变量的前面,也可以在变量的后面,如下

a++;
++a;

二者的作用均是使变量a1,当二者如上单独使用时,二者没有区别,但是当混合使用时,有区别,具体表现如下

  • ++a:先将a进行+1,然后使用a
  • a++:先使用a,再将其进行+1

例如:

int a = 3;
b = a++; //先使用a,即先将a的值赋值给b,所以b=3,然后+1,所以最后a=4
int a = 3;
b = ++a; //先将a+1,即a=4,然后将a赋值给b,所以b=4

--的作用是减1,其用法同++一模一样,这里不多加介绍。

注意:

  • 常量不能进行++,--运算
30++;  //该写法是错误的

赋值运算符

赋值运算符分为基本赋值运算符和复合赋值运算符

  • 基本赋值运算符
    • =
  • 复合赋值运算符
    • +=
    • -=
    • *=*
    • /=
    • %=

基本赋值运算符的作用就是把右边的值赋给左边的变量

int a = 3; //把3赋给变量a

注意:

  • 常量是不变的,不能被赋值,所以常量不能出现在赋值运算符的左边
50 = 30; //该写法是错误的

复合赋值运算符,这里介绍+=,其他与它类似

int a = 3;
a += 3; //相当于a = a + 3
a *= 3; //相当于a = a * 3
// 其他的同理可以知道... ...

注意:

  • 复合赋值运算符隐含了强制类型转换
short s = 2;
s += 2; //这里暗含了强制类型转换,s + 2得到的是一个int类型,被强制转换为了short类型,所以相当于s = (short) (s + 2);

比较运算符

比较运算符对操作数进行比较,得到一个boolean数据类型的值,比较运算符包含以下:

  • ==:判断两个数是否相等
  • >
  • <
  • >=:大于等于
  • <=
  • !=:判断两个数是否不相等

注意:

  • 在判断某变量属于某区间,比如是否大于3小于5时,不能写成3 < x < 5,应当使用后面提及的逻辑运算符3 < x && x < 5

逻辑运算符

逻辑运算符的对象是boolean数据类型的值,包含下面三个操作

  • &&:与操作,当两个操作数同时为true时,结果才为true
  • ||:或操作,两个操作数中有一个操作数为true时,结果就为true
  • !:非操作,!true = false, !false = true

注意:

  • 逻辑运算符的操作对象为boolean,所以如果操作对象不为boolean类型时,会报错
boolean b = 5 && 2; //会报错
boolean b = 5 && true; //会报错
  • 短路
    • 表达式1 && 表达式2:当表达式1为假时,已经可以判断出结果为假,所以不会对表达式2进行判断,不会执行表达式2
    • 表达式1 || 表达式2:当表达式1为真时,已经可以判断出结果为真,同上。
int a = 3;
System,out.println(false && a++ < 100); //此时进行了短路运算,a++ < 100没有得到执行,所以a = 3
int a = 3;
System.out.println(true || a++ < 100); //同上

三元运算符

这里的三元指的是有三个操作数,上面我们介绍的运算符的操作数要么是一个的,如++,--,!,要么是两个的,如+,-,...,三元运算符的格式是

变量 = 条件判断 ? 表达式1 : 表达式2;

首先会进行条件判断,如果条件判断得到的结果为true,那么会将表达式1的结果赋值给变量,此时表达式2不会得到执行;否则将表达式2的结果赋值为变量。

int a= 3;
int b = 4;
int c = 4 > 3 ? a : b++; //c = 3,表达式2没有执行,b = 4
System.out.println(b);   //输出为4

注意:

  • 变量的类型必须与表达式的结果的类型一致,否则会报错
int c = 4 > 3 ? 2 : 2.5; //该语句是错的,2.5是double类型,不能转化为int

可能有的人会说返回的2,为什么会报错,因为在实际中,判断语句的结果不是确定的,否则直接将2赋值给c好了,根本不需要判断,因此两个表达式的结果都有可能赋值给变量,编译器会检查表达式得到的数据类型。

  • 单独写三元表达式是错误的
int a = 4; b = 3;
a > b ? a : b; //这么单独写是错误的

但是可以这么写

System.out.println(a > b ? a : b); //这么写是对的
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
探索全栈前端技术的魅力:HTML+CSS+JS+JQ+Bootstrap网站源码深度解析 在这个数字化时代,构建一个既美观又功能强大的网站成为了许多开发者和企业追逐的目标。本份资源精心汇集了一套完整网站源码,融合了HTML的骨架搭建、CSS的视觉美化、JavaScript的交互逻辑、jQuery的高效操作以及Bootstrap的响应式设计,全方位揭秘了现代网页开发的精髓。 HTML,作为网页的基础,它构建了信息的框架;CSS则赋予网页生动的外观,让设计创意跃然屏上;JavaScript的加入,使网站拥有了灵动的交互体验;jQuery,作为JavaScript的强力辅助,简化了DOM操作与事件处理,让编码更为高效;而Bootstrap的融入,则确保了网站在不同设备上的完美呈现,响应式设计让访问无界限。 通过这份源码,你将: 学习如何高效组织HTML结构,提升页面加载速度与SEO友好度; 掌握CSS高级技巧,如Flexbox与Grid布局,打造适应各种屏幕的视觉盛宴; 理解JavaScript核心概念,动手实现动画、表单验证等动态效果; 利用jQuery插件快速增强用户体验,实现滑动效果、Ajax请求等; 深入Bootstrap框架,掌握移动优先的开发策略,响应式设计信手拈来。 无论是前端开发新手渴望系统学习,还是资深开发者寻求灵感与实用技巧,这份资源都是不可多得的宝藏。立即深入了解,开启你的全栈前端探索之旅,让每一个网页都成为技术与艺术的完美融合!
探索全栈前端技术的魅力:HTML+CSS+JS+JQ+Bootstrap网站源码深度解析 在这个数字化时代,构建一个既美观又功能强大的网站成为了许多开发者和企业追逐的目标。本份资源精心汇集了一套完整网站源码,融合了HTML的骨架搭建、CSS的视觉美化、JavaScript的交互逻辑、jQuery的高效操作以及Bootstrap的响应式设计,全方位揭秘了现代网页开发的精髓。 HTML,作为网页的基础,它构建了信息的框架;CSS则赋予网页生动的外观,让设计创意跃然屏上;JavaScript的加入,使网站拥有了灵动的交互体验;jQuery,作为JavaScript的强力辅助,简化了DOM操作与事件处理,让编码更为高效;而Bootstrap的融入,则确保了网站在不同设备上的完美呈现,响应式设计让访问无界限。 通过这份源码,你将: 学习如何高效组织HTML结构,提升页面加载速度与SEO友好度; 掌握CSS高级技巧,如Flexbox与Grid布局,打造适应各种屏幕的视觉盛宴; 理解JavaScript核心概念,动手实现动画、表单验证等动态效果; 利用jQuery插件快速增强用户体验,实现滑动效果、Ajax请求等; 深入Bootstrap框架,掌握移动优先的开发策略,响应式设计信手拈来。 无论是前端开发新手渴望系统学习,还是资深开发者寻求灵感与实用技巧,这份资源都是不可多得的宝藏。立即深入了解,开启你的全栈前端探索之旅,让每一个网页都成为技术与艺术的完美融合!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值