[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 ...
随机推荐
- js对象的深度克隆
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- ThinkPHP(3)SQL查询语句
ThinkPHP中对查询语句,包含了基本的查询方式.表达方式.快速查询.区间查询.组合查询.SQL查询.动态查询和子查询. 一.查询方式 ThinkPHP提供了三种基本的查询方式:字符串条件查询.索引 ...
- java开发环境
java开发环境搭建 文中主要内容来自:http://blog.csdn.net/cxwen78/article/details/6400798 .文章对原文有所改动. 1. 开发工具获取 开发工 ...
- struts2乱码
在spring.jar包的org.springframework.web.filter包下有个CharacterEncodingFilter.java 把spring.jar放进工程的lib里,然后在 ...
- PKU 1005
比较简单吧,其实算是数学问题了 // 1005.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include "stdio.h ...
- JAVA代理模式与动态代理模式
1.代理模式 所谓代理,就是一个人或者一个机构代表另一个人或者另一个机构采取行动.在一些情况下,一个客户不想或者不能够直接引用一个对象,而代理对象可以在客户端和目标对象之前起到中介的作用.代理模式给某 ...
- BZOJ 3339 && BZOJ 3585 莫队+权值分块
显然若一个数大于n就不可能是答案. #include <iostream> #include <cstring> #include <cstdio> #includ ...
- vs2010无可用源
全选CPP文件内容,选择 “编辑”-“高级”-“设置选定内容的格式”,保存,重新编译. 当然这种方法是不能完全解决这个问题的奥,你需要在菜单栏的生成里面找到重新生成解决方案,重新生成解决方案试一下啦, ...
- 使用Gitolite搭建轻量级的Git服务器
By Harrison Feng在Git服务管理工具这个领域,主要有三种流行的方案,它们分别是 Gitosis - 轻量级, 开源项目,使用SSH公钥认证,只能做到库级的权限控制.目前项目已经停止开发 ...
- 2016-12-19 php修改数据库数据
让info表在网页中显示 <h1>人员表</h1><table width="100%" cellpadding="opx" ce ...