java基础之操作符
一:赋值
1.对基本数据类型的赋值,int a=b; //把b的值复制给a,如果修改了a的值,b 的值不会受到影响。
2.对引用类型的赋值,
public class Text {
public static void main(String[] args) {
Person a=new Person();
Person b=a;
//System.out.println(b.age);
b.age=14;
System.out.println(a.age);
}
}
class Person
{
int age=15;
}
输出结果:14
解: 引用a指向一个堆空间,接着b也指向这个空间,ab共用一个堆空间,当b.age=14改变时候,a也跟着改变。(String虽然也是引用,但是)
二:自增自减
- 前缀递增(递减):++i(--i) :先执行递增(递减)操作,再执行语句。
- 后缀递增(递减):i++(i--) :先执行语句,在执行递增(递减)操作。
int i=1;
System.out.println(i++);
i=2;
System.out.println(++i); 结果:1
3
三:关系操作符
- 组成:大于(>) 小于(<) 小于等于(<=) 大于等于(>=) 等于(==) 不等于(!=)
- 结果:生成的是boolean类型的结果。
- 等于(==)和不等于(!=)适用于所有的基本类型,而其他比较符不适用于boolean类型,比如true>false 没有实际意义。
- 等于(==)和不等于(!=)比较的是对象的引用。
- 我们知道==和!=是用于比较对象的引用,但是如果我们想直接比较对象的值呢?这里可以用equlas()方法来比较,但是这个方法不适用与基本数据类型,基本数据类型用==和!=就可以比较。 注意:equals()默认的是比较引用,但是大多数类都覆盖了equals()以便比较对象的内容,如果是我们创建类中,equals()就不能比较对象的内容因为我们没有重新定义并覆盖这个方法。
public class Text {
public static void main(String[] args) {
String a=new String("abc");
String b=new String("abc");
System.out.println(a.equals(b)); //true a的类String覆盖了equlas()以便比较对象的内容,所以ab相等
Person a1=new Person();
Person b1=new Person();
System.out.println(a1.equals(b1)); //false 自定义类Person中没有覆盖equals(),故还是原来的equals()只能比较地址。
}
}
class Person
{
int i=15;
}
结果: true
false
四、逻辑操作符
1.组成
&&(短路与) ||(短路或) !(非) & |
2.应用范围
与或非只可适用于布尔值,!flag 中flas只能是true或者false,int a=true; 这种表达方式是错误的
java基础之操作符的更多相关文章
- Java基础(一)--操作符
Java底层都是使用操作符来操作Java中的数据 常见的操作符:+.-.*./.= 优先级: 当一个表达式存在多个操作符时,操作符的优先级决定了计算顺序,这点在我们刚开始学习数学的时候就会了解到 如果 ...
- Java基础——2 操作符
- 【JAVA面试题系列一】面试题总汇--JAVA基础部分
JAVA基础 基础部分的顺序: 基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法 线程的语法,集合的语法,io 的语法,虚拟机方面的语法 每天几道,持续更新!! 1.一个". ...
- Java基础知识【下】( 转载)
http://blog.csdn.net/silentbalanceyh/article/details/4608360 (最终还是决定重新写一份Java基础相关的内容,原来因为在写这一个章节的时候没 ...
- Java基础知识【上】(转载)
http://blog.csdn.net/silentbalanceyh/article/details/4608272 (最终还是决定重新写一份Java基础相关的内容,原来因为在写这一个章节的时候没 ...
- java基础知识小总结【转】
java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...
- Java基础应用
Java集合类解析 List.Map.Set三个接口,存取元素时,各有什么特点? List 以特定次序来持有元素,可有重复元素.Set 无法拥有重复元素,内部排序.Map 保存key-value值,v ...
- Java基础常见英语词汇
Java基础常见英语词汇(共70个) ['ɔbdʒekt] ['ɔ:rientid]导向的 ['prəʊɡræmɪŋ]编程 OO: object ...
- 经典的Java基础面试题集锦
经典的Java基础面试题集锦,欢迎收藏和分享. 问题:如果main方法被声明为private会怎样? 答案:能正常编译,但运行的时候会提示”main方法不是public的”. 问题:Java里的传引用 ...
随机推荐
- JMS(java消息服务)整合Spring项目案例
转载自云栖社区 摘要: Sprng-jms消息服务小项目 所需的包: spring的基础包 spring-jms-xx包 spring-message–xx包 commons-collection-x ...
- 解决,Incorrect table definition; there can be only one auto column and it must be defined as a key
今天在迁移项目时,操作数据库报错: Incorrect table definition; there can be only one auto column and it must be defin ...
- 【CSS学习笔记】CSS选择器
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xht ...
- 瑶瑶GBK好的,UTF-8卡死
请求地址: 开发环境核心 esb : http://10.15.22.120:8866/0203000007/EmpAndDptRelateInfoSync/V1 用gbk可以马上返回. 用utf-8 ...
- 隐藏或删除指定的html元素
<div id="Contain"> <div>好好学习<div> <div>天天向上<div> <div> ...
- [UWP小白日记-15]在UWP手机端实时限制Textbox的输入
说实话重来没想到验证输入是如此的苦逼的一件事情. 网上好多验证都是在输入完成后再验证,我的想法是在输入的时候就限制输入,这样我就不用再写代码来验证了 应为是手机端,所以不用判断其他非法字符,直 ...
- 【01背包】HDU 2602 Bone Collector (模板题)
Problem Description Many years ago , in Teddy's hometown there was a man who was called "Bone C ...
- C#-实验3
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- org.apache.log4j.Logger 详解
org.apache.log4j.Logger 详解 1. 概述 1.1. 背景 在应用程序中添加日志记录总的来说基于三个目的 :监视代码中变量的变化情况,周期性的记录到文件中供其他应用进行统计 ...
- Python中is和==的区别的
在python中,is检查两个对象是否是同一个对象,而==检查他们是否相等. str1 = 'yangshl' str2 = 'yang' + 'shl' print('str1 == str2:', ...