[THINKING IN JAVA]操作符
3 操作符
3.1 static import
可以static import静态方法和变量,这样就可以在不写类名的前提下调用类中的静态方法和变量;
package com.chenlei.study.thinkinginjava; import static java.lang.System.out;
import static java.lang.Integer.parseInt; public class StaticImport {
public static void main(String[] args) {
out.println();
parseInt("123");
}
}
3.2 对象引用和值传递
- 对象a、b,a=b表示将b对象的引用传递给a此时a和b指向同一个对象,修改a和b任意一个引用的成员都是在修改同一个引用的成员;
- 基础类型a、b,a=b表示将b的值赋与a,此时a和b的值相等,却不是指向同一个引用,修改a和b中任何一个变量的值都会导致a!=b。
3.3 运算符
- +、-、*、/、%、+=、-=、*=、/=、%=
- ++、--(注意放在前后的区别:放在前表示先计算后取值返回,放在后表示先取值返回再计算)
- >、<、>=、<=、==、!=(注意对象的==和equals方法:==表示判断引用的对象地址是否相同,equals表示比较两个对象的内容是否相同(泛),还需注意java常量池技术)
- &&、||、!(短路:当一个表达式的值能够在某一次判断中准确得出,剩下的表达式部分将不被执行,比如a||b,如果a为true,那可以判断整个表达式为true,表达式b将不会执行)
- 直接常量:float(f/F)、double(d/D)、long(L/l)、hex(0x)、八进制(0)、浮点数(1.1e-5f)
- 按位操作符:&、|、^、~、&=、|=、^=
- 移位操作:>>、<<、>>>、>>=、<<=、>>>=
- 三元操作符:boolean-exp ? true-value : false-value
- 字符串拼接:+、+=(只要拼接的表达式中有一个是字符串,整个表达式都将返回字符串)
[THINKING IN JAVA]操作符的更多相关文章
- Java操作符
几乎所有运算符都只能操作"主类型"(Primitives).例外是"="."= ="和"! =",它们能操作所有对象.除 ...
- JavaSE复习日记 : Java操作符\关系运算符\逻辑运算符\赋值运算符\字符串连接符\三元运算符
// Java操作符\关系运算符\逻辑运算符\赋值运算符\字符串连接符\三元运算符 /* * 一 Java操作符 * * Java操作符都有哪些? * +, -, *, /, %, ++, -- * ...
- Java操作符真的简单到易如反掌?
之前我写了一篇<吃人的那些Java名词:对象.引用.堆.栈和堆栈>,本以为凭借自己8年的Java编程经验足够把这些“吃人”的Java名词解释清楚了,但有网友不以为然,在文章底部评论说:“老 ...
- Java 操作符
子系统的特点 instanceof 操作符 Animal类是Dog的直接父类,Creature类和Object类是Dog的间接父类,因此 Dog dog=new Dog(); System.out.p ...
- Java操作符,<<、>>等
数学意义:在数字没有溢出的前提下,对于正数和负数,左移一位都相当于乘以2的1次方,左移n位就相当于乘以2的n次方. 计算:3 << 2 3 << 2,则是将数字3左移2位 1. ...
- Java 操作符小记
"在最底层,Java中的数据是通过使用操作符来操作的" (Thinking in Java) 1 算术操作符 Java 中的基本算术操作符和其他大多数程序设计语言是相同的.其中包括 ...
- Java操作符——i++ 和 ++i的区别
问题:前置自增和后置自增的区别 Code-后置自增 public class Test { public static void main(String[] args) { int a = 2; in ...
- 【Stackoverflow好问题】Java += 操作符实质
问题 直到今天,我都一直以为: i += j 等同于 i = i + j; 但如果有: int i = 5; long j = 8; 这时 i = i + j不能编译.但i += j却能够编译.这说明 ...
- [Java编程思想-学习笔记]第3章 操作符
3.1 更简单的打印语句 学习编程语言的通许遇到的第一个程序无非打印"Hello, world"了,然而在Java中要写成 System.out.println("He ...
随机推荐
- LCD内核自带驱动分析
分析内种LCD驱动程序框架 LCD在fbmem.c文件中1.找到init.函数 static int __initfbmem_init(void){ 做的工作: (1).if (register_ch ...
- Java_DOM创建XML
import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream; ...
- WC项目要求
#include "stdio.h" #include "string.h" #include "stdlib.h" int charcal ...
- HTML DOM
1.DOM方法 常用 getElementById() 返回带有指定 ID 的元素 getElementsByTagName() 返回包含带有指定标签名称的所有元素的节点列表(集合/节点数组) ge ...
- height与line-height
1.网页的所有元素可以分为块元素和行元素.一行文字所在的一个逻辑区域是行元素,其他的元素就都是块元素line-height只针对行元素,height针对其他所有元素 2. width,height对于 ...
- Android深度探索--HAL与驱动开发----第一章读书笔记
1. Android的系统架构有四层,它的发展目前来说 是比较成熟的,流行于目前的市场.其架构包括四层(linux内核.C/C++代码库.Android SDK API.应用程序). 2. 驱动是直接 ...
- Android实战技巧:ViewStub的应用
在开发应用程序的时候,经常会遇到这样的情况,会在运行时动态根据条件来决定显示哪个View或某个布局.那么最通常的想法就是把可能用到的View都写在上面,先把它们的可见性都设为View.GONE,然后在 ...
- SIP模块版本错误问题:the sip module implements API v??? but XXX module requires API v???
系统安装了python 2.7,继续安装PyQt4,于是依次下载sip.pyqt4源码进行安装.用以下代码测试: import PyQt4.QtGui 显示出错.错误信息:the sip module ...
- 常见Linux命令的介绍
今天看到了一些Linux命令的英文全称,于是,就总结上来.通过理解英文全称,去更好的理解与记忆Linux命令. 1.ls——List 列举出当前工作目录的内容(文件或文件夹),就跟你在GUI中打开一个 ...
- springMvc 报错
org.springframework.core.convert.ConversionFailedException: Failed to convert from type java.util.Ar ...