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,对于一个有开发经验的人来说学习一门新语言相对来说 ...
随机推荐
- web 日历 任务 插件
[2] 日历任务插件(jquery版)新增日历任务和点击监听 - qq_26462567的博客 - CSDN博客https://blog.csdn.net/qq_26462567/article/de ...
- 其他综合-使用Xshell远程连接管理Linux实践
使用Xshell远程连接管理Linux实践 1. Xshell整体优化 1)点击 工具 ,然后选择 选项 2)在 常规 选项中,下面的存放路径根据个人爱好修改(可选默认) 3)在 更新 选项中,将 √ ...
- mysql-笔记 json
1 JSON 列不能有non-NULL 默认值 2 JSON值:数组:["abc",10,null,true,false] 可嵌套 对象:{"k1":" ...
- @Autowired 基本介绍,有待丰富
今天做项目对于@Autowired理解有点错误:过两天再来看看 转自:https://www.cnblogs.com/szlbm/p/5512931.html 什么是注解 传统的Spring做法是使用 ...
- 进程Process之join、daemon(守护)、terminate(关闭)、multiprocessing之锁、信号量和事件
一.Process 参数介绍: 1 group参数未使用,值始终为None 2 target表示调用对象,即子进程要执行的任务 3 args表示调用对象的位置参数元组,args=(1,2,'a',) ...
- VueRouter和Vue生命周期(钩子函数)
一.vue-router路由 1.介绍 vue-router是Vue的路由系统,用于定位资源的,在页面不刷新的情况下切换页面内容.类似于a标签,实际上在页面上展示出来的也是a标签,是锚点.router ...
- 10.3 Vue 路由系统
Vue 路由系统 简单示例 main.js import Vue from 'vue' import App from './App.vue' //https://router.vuejs.or ...
- react事件处理函数中绑定this的bind()函数
问题引入 import React, { Component } from 'react'; import { Text, View } from 'react-native'; export def ...
- JavaScript继承的几种实现
0 什么是继承 继承就是获得存在对象已有的属性和方法的一种方式. [2019.4.26 更新]今日又重新学习了一下JS的继承,在这里整理一下以前的笔记并补充一些新的感悟. 1 JS中继承的几种实现方法 ...
- 为什么要使用50ohm阻抗?
对于接收机我们期望同轴线的损耗越低越好 对于发射机同轴线的功率效率则是越大越好 所以在二者性能最优时阻抗并不相等 https://www.sohu.com/a/109536765_335274