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,对于一个有开发经验的人来说学习一门新语言相对来说 ...
随机推荐
- redis优化
一.配置文件优化 bind 127.0.0.1 //允许连接的ip,如果就本机连接最后127.0.0.1 protected-mode yes //是否开启保护模式.默认开启,如果没有设置bind项的 ...
- 阿里云短信服务bug
接入阿里云短信服务,在springboot中写测试方法,执行到 IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou ...
- CSS属性速查表
前面的话 本文将按照布局类属性.盒模型属性.文本类属性.修饰类属性这四个分类,对CSS常用属性进行重新排列,并最终设置为一份stylelintrc文件 布局类 1.定位 position z-inde ...
- 常用的flex布局
演示地址:https://xibushijie.github.io/static/flex.html
- CodeForces 868F Yet Another Minimization Problem(决策单调性优化 + 分治)
题意 给定一个序列 \(\{a_1, a_2, \cdots, a_n\}\),要把它分成恰好 \(k\) 个连续子序列. 每个连续子序列的费用是其中相同元素的对数,求所有划分中的费用之和的最小值. ...
- Kubernetes从懵圈到熟练:读懂这一篇,集群节点不下线
排查完全陌生的问题,完全不熟悉的系统组件,是售后工程师的一大工作乐趣,当然也是挑战.今天借这篇文章,跟大家分析一例这样的问题.排查过程中,需要理解一些自己完全陌生的组件,比如systemd和dbus. ...
- CF765F Souvenirs
CF765F Souvenirs [CF765F]Souvenirs 主席树 - CQzhangyu - 博客园 其实不用主席树 感觉像是离线问题 但是不能支持差分.分治又处理不了 考虑按照右端点排序 ...
- js拖拽效果详细讲解
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Luogu P3227 [HNOI2013]切糕 最小割
首先推荐一个写的很好的题解,个人水平有限只能写流水账,还请见谅. 经典的最小割模型,很多人都说这个题是水题,但我还是被卡了=_= 技巧:加边表示限制 在没有距离\(<=d\)的限制时候,我们对每 ...
- [Android] Android Java String 转Uri
Uri uri = Uri.parse("https://www.baidu.com") URI uri = new URI("https://www.baidu.com ...