java学习 之 操作符
操作符介绍
java语言操作符
1、赋值操作符 =
2、计算操作符 + 、- (减、负号)、*(乘)、/(除)
3、递增递减 --(递减)、++(递增)
4、关系操作符 ==、!=、equals()
5、逻辑操作符 ! 、&& 、|| 、& 、|
赋值操作符
赋值操作符,顾名思义就是把一个值覆盖一个变量,在java程序中,通常是等号 (=) 右边的是内容,左边的承接内容的变量
public class CaozuofuFuzhi
{
public static void main(String[] args)
{
//值变量赋值
int AA = 8;
//引用类型赋值
String str = "I am String";
//类的赋值
Myclass mc = new myClass();
}
}
int类型和String 类型的赋值都好理解;
第三个涉及到类。我们把MyClass 看做是一个数据类型,mc 看做是这个数据类型的变量。后面 new myClass() 是初始化类,可以把他看做是Objdect 对象。这样就是 把 new myClass() 对象赋值给了 类型为MyClass 变量 mc。
计算操作符
计算操作符很简单,这个直接看代码很直观
public class Caozuofu
{
public static void main(String[] args)
{
int A = 48;
int B = 30; int jiegou;
// 符号 +
jiegou = A+B;
System.out.println("A + B:"+jiegou);
// 符号 -
jiegou = A-B;
System.out.println("A - B:"+jiegou);
// 符号 *
jiegou = A*B;
System.out.println("A * B:"+jiegou);
// 符号 /
jiegou = A/B;
System.out.println("A - B:"+jiegou);
// 符号 %
jiegou = A%B;
System.out.println("A - B:"+jiegou); }
}
计算结果
A + B:78
A - B:18
A * B:1440
A - B:1
A - B:18
计算操作符中主要注意的两点:
1、接受结算结构的值是否能够满足这个值得内容范围,尤其是计算乘法的时候。数据类型的大小范围在博客 java学习 之 java基本类型
2、算法操作符的优先级。
public class CaozuofuFuzhi
{
public static void main(String[] args)
{
//计算操作符的优先级
int A = 3;
int B =8;
int C = 10;
int D = 7; int jg ;
int jg1;
jg = A + B * C - D;
jg1 = (A + B) * (C - D);
System.out.println("jg = "+ jg+ " jg1="+jg1); }
} //执行结构
jg = 76 jg1=33
递增递减
递增递减也分为在数字前面前面递增(递减)还是后面递增递减。(对于前递增和前递减(如++A 或--A),会先执行运算,再生成值。而对于后递增和后递减(如A++或A--),会先生成值,再执行运算。),见代码例子
public class Caozuofu4
{
public static void main(String[] args)
{
int intB = 200;
// 前++
int intA= ++intB;
System.out.println("前++");
System.out.println(intA);
System.out.println(intB);
// 后++
int intC = 100;
intA= intC++;
System.out.println("后++");
System.out.println(intA);
System.out.println(intC); }
} /* -------------------------------执行结构---------------------------------------- */
前++
201
201
后++
100
101
这是 ++ 的例子,-- 同理。
关系操作符
关系操作符,就是判断两个值是不是相同,生成的是一个 boolean (布尔)结果。比较操作符有 > 、< 、>= 、<= 、!= 、==、equals(),还可以直接就是一个 boolean 的变量。
其他操作符比较直观好理解。这边显示一个例子来说明。
public class CaozuofuGuanxi
{
public static void main(String[] args)
{
int aa = 1;
int bb = 1;
System.out.println(aa==bb);
System.out.println(aa!=bb); }
} //----------------执行结果-------------------------
true
false
下面重点看下,== 、 equals 的用法和区别:
== 主要用来比较基本类型,equals 用来比较引用类型。
这两者比较的是引用的内容的地址,但是为什么在String 类型中又可以比较内容的值了呢,那是因为 String 类对这个 equals 进行重写,使得他们不再比较变量只想的地址,而是来比较地址中的内容是不是形同了。
逻辑操作符
&&、& 并且的操作符。只是 && 在逻辑关系中是短路的操作符(短路:在并且操作符中,如果第一个比较是 false 的,那么后面的比较久无需在执行。而在或者操作符中,如果第一个比较是 true的,后面的也无需在执行。)
|| 、|、或者的操作符。 || 是短路的。
! 非操作符,取相反的意思
java学习 之 操作符的更多相关文章
- 0032 Java学习笔记-类加载机制-初步
JVM虚拟机 Java虚拟机有自己完善的硬件架构(处理器.堆栈.寄存器等)和指令系统 Java虚拟机是一种能运行Java bytecode的虚拟机 JVM并非专属于Java语言,只要生成的编译文件能匹 ...
- [ Java学习基础 ] Java的继承与多态
看到自己写的东西(4.22的随笔[ Java学习基础 ] Java构造函数)第一次达到阅读100+的成就还是挺欣慰的,感谢大家的支持!希望以后能继续和大家共同学习,共同努力,一起进步!共勉! ---- ...
- Java 学习(5):修饰符 运算符
目录 --- 修饰符 --- 运算符 --- 循环结构 --- 分支结构 修饰符: 修饰符用来定义类.方法或者变量,通常放在语句的最前端.如下: public class className { // ...
- Java 学习(21):Java 实例
Java 实例 本章节我们将为大家介绍 Java 常用的实例,通过实例学习我们可以更快的掌握 Java 的应用. Java 环境设置实例 //HelloWorld.java 文件 public cla ...
- Java学习笔记之---基础语法
Java学习笔记之---基础语法 一. Java中的命名规范 (一)包名 由多个单词组成时,所有字母小写(例如:onetwo) (二)类名和接口 由多个单词组成时,所有单词首字母大写(例如:OneTw ...
- Java学习:JDK8的新特性
Java学习:JDK8的新特性 一.十大特性 Lambda表达式 Stream函数式操作流元素集合 接口新增:默认方法与静态方法 方法引用,与Lambda表达式联合使用 引入重复注解 类型注解 最新的 ...
- 0037 Java学习笔记-多线程-同步代码块、同步方法、同步锁
什么是同步 在上一篇0036 Java学习笔记-多线程-创建线程的三种方式示例代码中,实现Runnable创建多条线程,输出中的结果中会有错误,比如一张票卖了两次,有的票没卖的情况,因为线程对象被多条 ...
- 0035 Java学习笔记-注解
什么是注解 注解可以看作类的第6大要素(成员变量.构造器.方法.代码块.内部类) 注解有点像修饰符,可以修饰一些程序要素:类.接口.变量.方法.局部变量等等 注解要和对应的配套工具(APT:Annot ...
- 分享篇——我的Java学习路线
虽然之前我是开发出身,但是我学习的语言是Objective-c,这个语言使用起来范围比较窄,对于自动化学习来说也是无用武之地,所以我自己学习了Java,对于一个有开发经验的人来说学习一门新语言相对来说 ...
随机推荐
- 删除a表中和b表相同的数据
删除a表中和b表相同的数据 - 冯索的专栏 - CSDN博客https://blog.csdn.net/wugouzi/article/details/9374329 oracle 查找A表存在B表不 ...
- Crypto加密解密
crypto 模块提供了加密功能,包含对 OpenSSL 的哈希.HMAC.加密.解密.签名.以及验证功能的一整套封装.我们这里讲crypto AES算法加密 一.使用步骤 1.引入Crypto 1. ...
- nginx中的epoll模型
要了解epoll模型,就要一个一个知识点由浅至深地去探索. 1.IO复用技术 IO流请求操作系统内核,有串行处理和并行处理两种概念. 串行处理是前面一个操作处理地时候,后面的所有操作都需要等待.因此, ...
- Linux--主从复制
一 . mysql+centos7 mariadb mariadb其实是跟mysql是一样的,只不过是在centos7上叫做mariadb, 主要是因为mysql被甲骨文公司收购后,可能会有闭源的风险 ...
- Promise学习笔记
Promise对象 Promise 表示一个异步操作的最终结果,与之进行交互的方式主要是 then 方法,该方法注册了两个回调函数,用于接收 promise 的终值或本 promise 不能执行的原因 ...
- Bugku 杂项 啊哒
有趣的表情包来源:第七届山东省大学生网络安全技能大赛 下载下来安装包后可以得到一张图片,010发现jpg后面还夹带着一些东西,用binwalk提取后得到一个压缩包,但是需要密码. 我卡在这里了,尝试了 ...
- 动态库 Framework
framework的建立和生成 都比较简单.重点会放在第三块上面(指令集说明及合并) 1.framework target建立 1.1. command + shift + N 选取 ios -> ...
- Codeforces878 A. Short Program
题目类型:位运算 传送门:>Here< 题意:给出\(N\)个位运算操作,要求简化操作数量,使之结果不受影响(数据在1023之内) 解题思路 我们发现数字的每一位是独立的.也就是说,每一个 ...
- scrapy之使用LinkExtractor提取链接
一.概述: 在页面含有少量链接时,使用selector来提取信息就可以,但如果链接特别多时,就需要用LinkExtractor来提取. 二.LinkExtractor构造器的各个参数: 1.allow ...
- pm2自动部署
配置pm2自动部署前,请确保已经能够ssh免密登录服务器. 一.创建ecosystem.json { "apps" : [{ "name" : "HT ...