java自学-运算符
上一篇介绍了java的变量和数据类型,要对数据处理,还需要用到java运算符,这里只总结下常用的,运算符主要分为以下几类:
1 算数运算符
算数运算符包括:
+ 加法运算
- 减法运算
* 乘法运算
/ 除法运算
% 取模运算,相除取余数
++ 、 -- 自增自减运算
前五种和数学中运算符一致,最后一种自增和自减是变量自身加/减1,有两种用法,一种放在变量前使用,如++i;一种放在变量后使用,如i++;这两种用法单独使用结果都一样,都是自身+1。但是如果和赋值运算一起使用时,就会有区别。例如下面代码:
public static void main(String[] args) {
int a = 1;
int b = ++a;
System.out.println(a);//计算结果是2
System.out.println(b);//计算结果是2
int c = a++;
System.out.println(a);//计算结果是3
System.out.println(c);//计算结果是2
}
赋值运算时, 前++ 是变量a先加1,再将加1后的结果赋值给b,a和b的结果都是2, 后++ 是a先赋值给c,变量a再加1,c的结果是2,a是3。
+ 符号在操作字符串的时候,就是把字符拼接起来,"a"+"b"的结果是“ab”
2 赋值运算符
赋值运算符,就是将符号右边的值,赋给左边的变量。
赋值运算符包括:
= 等于号
+= 加等于
-= 减等于
*= 乘等于
/= 除等于
%= 取模等
示例代码:
public static void main(String[] args){
int i = 1;
i+=2;//等同 i=i+2 变量i先加2,再赋值变量i,其余赋值运算符也是这个操作
System.out.println(i); //输出结果是3
}
3 比较运算符
比较运算符,是两个数据之间进行比较的运算。
比较运算符包括:
== 比较符号两边数据是否相等,相等结果是true。
< 比较符号左边的数据是否小于右边的数据,如果小于结果是true。
> 比较符号左边的数据是否大于右边的数据,如果大于结果是true。
<= 比较符号左边的数据是否小于或者等于右边的数据,如果小于结果是true。
>= 比较符号左边的数据是否大于或者等于右边的数据,如果小于结果是true。
!= 不等于符号 ,如果符号两边的数据不相等,结果是true。
示例代码:
public static void main(String[] args) {
System.out.println(1==1);//true
System.out.println(1<2);//true
System.out.println(1>2);//false
System.out.println(1<=2);//true
System.out.println(1>=2);//false
System.out.println(1!=2);//true
}
4 逻辑运算符
逻辑运算符,是用来连接两个布尔类型结果的运算符,运算结果都是布尔值 true 或者 false
逻辑运算符包括:
&& 与运算 两边都是true,结果是true ,只要有一边是false,结果是false, 特点:符号左边是false,右边不再运算
|| 或运算 两边都是false,结果是false,只要有一边是true,结果是true,特点: 符号左边是true,右边不再运算
! 取反 true 取反结果是false, !false取反结果是true
示例代码:
public static void main(String[] args) {
System.out.println(true && true);//true
System.out.println(true && false);//false
System.out.println(false || false);//falase
System.out.println(false || true);//true
System.out.println(!false);//true
}
5 三元运算符
三元运算符格式:数据类型 变量名 = 布尔类型表达式?结果1:结果2
如果布尔类型表达式结果是true,三元运算符整体结果为结果1,
如果布尔类型表达式结果是false,三元运算符整体结果为结果2。
示例代码:
public static void main(String[] args) {
int i = (1<=2 ? 1 : 2);
System.out.println(i);//结果1
int j = (1==2 ? 1 : 2);
System.out.println(j);//结果2 }
java自学-运算符的更多相关文章
- Java自学路线图之Java系统自学
Java自学不是一朝一夕的事情.可以采用"懒开始"的方法,但是必须要坚持下去,才能真正自学Java掌握编程技术.那些企图学几天去包装一下找工作的,请绕道.如果你下定决心自学Java ...
- Java自学路线图之Java基础自学
自学Java要从Java基础语法开始自学,自学Java的过程中打好基础是很重要的!首先自学:面向对象基础,API基础,集合基础.这些对Java小白的数学和英语能力的要求门槛不高,在学习的过程中积累相应 ...
- 大学四年,总结一套适合小白的Java自学路线和方法
前言篇 大家好,我是bigsai 好久不见,甚是想念,文章同时收录在回车课堂(文底阅读原文可达). 无论你是大学生还是在职人员,想学Java时,都会面临两个选择,自学或者报班.报班通常太费钱,时间又不 ...
- 【转】JAVA自学之路
JAVA自学之路 一: 学会选择 为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游戏.3G.测试等. 那么究竟应该选择什么方向 ...
- Java自学之道全文下载地址
道可道非常道,名可名非常名. Java自学之道博大精深,自己只是将理论和实际相结合,进行了简单总结. Java自学之道全文可在自己的博客下载 http://my.oschina.net/mkh/bl ...
- Java自学成长路线(转载)
JAVA自学之路 一:学会选择 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游戏.3G.测试等. JAVA是一种平台,也是一种程序设计语言,如何学好程序设计不仅 ...
- java移位运算符具体解释
java移位运算符不外乎就这三种:<<(左移).>>(带符号右移)和>>>(无符号右移). 1. 左移运算符 左移运算符<<使指定值的全部位都左移 ...
- JAVA的运算符和条件结构
一.JAVA的运算符. 1.赋值运算符 赋值就是把一个变量的值赋给另一个变量. 语法: 变量名=表达式 例如 n = m + 5 2.算术运算符 算术运算符是数学中常用的加.减.乘 ...
- java位移运算符3 转
https://www.cnblogs.com/winsker/p/6728672.html 移位运算符操作的对象就是二进制的位,可以单独用移位运算符来处理int型整数. 理解java移位运算符 运算 ...
随机推荐
- c# 字符串去掉两端空格,并且将字符串中多个空格替换成一个空格
字符串去掉两端空格,并且将字符串中多个空格替换成一个空格: 主要还是考察使用字符串的方法: trim(); 去掉字符串两端空格 split(); 切割 string.join(); 连接 class ...
- PageAdmin CMS网站制作教程实例:如何制作一个报名表?
PageAdmin CMS网站建设实例:如何制作一个报名表? 有时我们根据需求需要制作一些自定义表,该如何去制作呢? 我们以制作一个报名表为例: 登录后台地址,进入后台, 2.在顶部导航中找到系统,并 ...
- Day 21 序列化模块_Json,Pickle,Shelve
序列化 , 数据类型,列表 元组, 字符串 只有字符串能被写入文件中. 能在网络上传输的只能是bytes - 字符串 把要传输的和要存储的内容转换成字符串. 字符串 转换回 要传输和存储的内容 序列化 ...
- Java基础学习篇---------this、object的学习
一.this的学习方法 1.使用this调用构造方法市一定放在构造方法的首行 2.使用this调用构造方法时一定流出调用的出口 public class MyClass { public MyClas ...
- series dataframe 的 idxmax()
返回最大值的索引
- [JS深入学习]——数组对象排序
(转) JavaScript实现多维数组.对象数组排序,其实用的就是原生的sort()方法,用于对数组的元素进行排序. sort() 方法用于对数组的元素进行排序.语法如下: arrayObject. ...
- WebStorm 最新版本激活方式
WebStorm 最新版本激活方式:今天下载最新版本的WebStorm,发现原来的通过license server激活的方式,网上的已经失效. 找到一种最新的激活码,今天试了下,是有效的.记录下. 注 ...
- php 对象 调用静态方法
1.BNF范式 .u.op.opline_num = , &$ TSRMLS_CC); } function_call_parameter_list .u.op.opline_num?NULL ...
- POJ 1287
#include<iostream> #include<stdio.h> #define MAXN 100 #define inf 1000000000 using names ...
- Linux运维中遇到的常见问题
1.CentOS启动tomcat出现乱码的解决方案1.打开tomcat下的server.xml配置文件,在connect标签中添加编码属性:URIEncoding="UTF-8"2 ...