Java基础:运算符
算数运算符:+,-,*,/,%,++,--
赋值运算符:=
关系运算符:>,<,>=,<=,==,!=,instanceof
逻辑运算符:&&,||,!
位运算符:&,|,^,~,>>,<<,>>>
条件运算符: ?:
扩展赋值运算符:+=,-=,*=,/=
package operator;
public class Demo1 {
public static void main(String[] args) {
//二元运算符
//Ctrl+D:复制当前行到下一行(仅IEDA)
int a=10;
int b=20;
int c=30;
int d=40;
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println((double)a/b);
System.out.println("===================");
long a1 = 1212121212121L;
int b1= 123;
short c1= 10;
byte d1= 8;
//+运算:带long的输出位long,没有long的都为int
System.out.println(a1+b1+c1+d1);//long
System.out.println(b1+c1+d1);//int
System.out.println(c1+d1);//int
//cast:转换
System.out.println("===================");
//关系运算符返回结果:布尔型:false,true
int e=10;
int f=20;
int g=21;
System.out.println(e>f);
System.out.println(e<f);
System.out.println(e==f);
System.out.println(e!=f);
System.out.println(g%e);//取余:21%10=1 21/10=2...1
System.out.println("=====================");
//++ -- 自增 自减 一元运算符
int a2=3;
System.out.println(a2);
int b2=a2++;//先赋值后自增
//a++: a = a + 1;
System.out.println(a2);
int c2=++a2;//先自增后赋值
//++a: a = a + 1;
System.out.println(a2);
System.out.println(b2);
System.out.println(c2);
System.out.println("====================");
//幂运算 2^3 2*2*2=8
double pow=Math.pow(3,2);//Math数学类,pow幂运算
System.out.println(pow);
System.out.println("====================");
//逻辑运算符
//与(&&)或(||)非(!)
boolean z=true;
boolean s=false;
System.out.println("z&&s:"+(z&&s));//逻辑与运算:两个变量都为真,结果才为真
System.out.println("z||s:"+(z||s));//逻辑或运算:两个变量有一个为真,结果才为真;两个变量都为假,结果才为假
System.out.println("!(z&&s):"+!(z&&s));//逻辑非运算:如果真则变假,如果假则变真
//短路运算
//逻辑与运算第一个变量为false,则后面变量就不会再运算
int q=5;
boolean w=(q<4)&&(q++<4);//回顾自增自减
System.out.println(w);//false
System.out.println(q);//5
System.out.println("=====================");
//位运算
/*
A=0011 1100
B=0000 1101
--------------------
A&B=0000 1100 A.B同为1则A&B为1 与
A|B=0011 1101 A.B同为0则A|B为0 或
A^B=0011 0001 A.B相同则A^B为0 异或
~B=1111 0010 取反
-----------------------
2*8=16 2*2*2*2
效率极高
<< 左移 *2
>> 右移 /2
0000 0000 0
0000 0001 1
0000 0010 2
0000 0011 3
0000 0100 4
0000 1000 8
0001 0000 16
*/
System.out.println(2<<3);
System.out.println("======================");
//偷懒运算符+= -= *= /=
int num1=10;
int num2=20;
num1+=num2;//num1=num1+num2;
num2-=num1;//num2=num2-num1;
System.out.println(num1);
System.out.println(num2);
System.out.println("======================");
//字符串连接符 + String
System.out.println(""+num1+num2);//30-10 ""在前拼接
System.out.println(num1+num2+"");//20 ""在后运算
System.out.println("======================");
//三元运算符?:
//x?y:z
//如果x==true,则结果为y,否则结果为z
int score=50;
String type=score<60?"不及格":"及格";//必须掌握
System.out.println(type);
}
}
Java基础:运算符的更多相关文章
- 菜鸡的Java笔记 第四 - java 基础运算符
数学运算符,逻辑运算,三目运算,位运算 double d2 = 314e2; //采用科学计数法的写法,表示10的2次方.= 31400.0 代码写的越简单越好 简化运算符 代码:x=x+y 可以 ...
- [Java 基础]运算符和表达式
Java运算符 (1)赋值操作符 赋值操作符(=)表示:取右边的值(即右值),把它复制给左边(即左值). 右值可以是任意的常量.变量或表达式(只要可以生成一个值). 左值必须是一个明确的.已命名的变量 ...
- Java 基础-运算符
Java运算符 算术运算符 赋值运算符 比较运算符 逻辑运算符 位运算符 运算符优先级 1. 算术运算符 运算符 运算 范例 结果 + 正号 +3 3 - 负号 b=4;-b -4 + 加 5+5 1 ...
- Java基础——运算符
一.赋值运算符 在前面的学习中,用到最多的是什么呢?就是“=” .例如:int money=1000; //储存本金 使用“=”将数值1000放入变量money的存储空间中.“=”称为赋值运算符. ...
- JAVA基础——运算符和表达式
JAVA语言常用的运算符和表达式详解 一.简述 运算符是一种"功能"符号,用以通知 Java 进行相关的运算.譬如,我们需要将变量 age 的值设置为 20 ,这时候就需要一个&q ...
- Java基础-运算符(03)
概念: 运算符:就是对于常量和变量进行操作的符号. 表达式:用运算符连接起来的符合java语法的式子,不同的运算符连接的表达式是不同类型的表达式. 运算符分类: 算数运算符(+ - * / % ...
- java基础 运算符
算数运算符 加号:在操作数值.字符.字符串时其结果是不同的,当两个字符相加得到的是ASCII码表值, 当两个字符串相加时表示将两个字符串连接在一起,从而组成新的字符串. 除号:整数在使用除号操作时,得 ...
- Java基础—运算符(转载)
转载自:Java运算符 计算机的最基本用途之一就是执行数学运算,作为一门计算机语言,Java也提供了一套丰富的运算符来操纵变量.我们可以把运算符分成以下几组: 算术运算符 关系运算符 位运算符 逻辑运 ...
- 二、java基础-运算符_控制语句_break_continue_return
1.运算符 1)算术运算符:6个+ — * \ % ++ --2)关系运算符:6个> >= < <= == !=3)布尔运算符&&并且 ||或 ...
- Java基础——运算符(同c语言)
随机推荐
- Python+Appium实现自动抢微信红包
前言 过年的时候总是少不了红包,不知从何时开始微信红包横空出世,对于网速和手速慢的人只能在一旁观望,做为python的学习者就是要运用编程解决生活和工作上的事情. 于是我用python解决我们的手速问 ...
- Redis 的缓存淘汰机制(Eviction)
本文从源码层面分析了 redis 的缓存淘汰机制,并在文章末尾描述使用 Java 实现的思路,以供参考. 相关配置 为了适配用作缓存的场景,redis 支持缓存淘汰(eviction)并提供相应的了配 ...
- redis字典
字典作为一种保存键值对的数据结构,在redis中使用十分广泛,redis作为数据库本身底层就是通过字典实现的,对redis的增删改查实际上也是构建在字典之上. 一.字典的结构
- u-boot 移植 --->1、u-boot配置(Kbuild)
早期的U-BOOT的裁剪是没有使用Kbuild工具的,后来就借鉴了Linux的Kbuild同时也是方便使用者裁剪,因为他的原理和Linux内核的配置裁剪原理是相同的.今天拿来分析的U-Boot的版本是 ...
- 101道Numpy、Pandas练习题
无论是数据分析还是机器学习,数据的预处理必不可少. 其中最常用.最基础的Python库非numpy和pandas莫属,很多初学者可能看了很多教程,但是很快就把用法忘光了. 光看不练假把式,今天向大家推 ...
- React Hooks: useRef All In One
React Hooks: useRef All In One useRef https://reactjs.org/docs/hooks-reference.html#useref refs xgqf ...
- why 2020 you should create a new modern website with web fullstack
why 2020 you should create a new modern website with web fullstack Full-Stack Web Development Front- ...
- LeetCode 算法题解 js 版 (001 Two Sum)
LeetCode 算法题解 js 版 (001 Two Sum) 两数之和 https://leetcode.com/problems/two-sum/submissions/ https://lee ...
- 微信小程序-显示外链图片 bug
微信小程序-显示外链图片 bug 显示外链图片 bug 403 bug 禁止外链,未授权 https://httpstatuses.com/403 image component 图片.支持 JPG. ...
- website i18n and L10n all in one
website i18n and L10n all in one Localization & Internationalization 本地化 & 国际化 https://www.w ...