[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 对象引用和值传递

  1. 对象a、b,a=b表示将b对象的引用传递给a此时a和b指向同一个对象,修改a和b任意一个引用的成员都是在修改同一个引用的成员;
  2. 基础类型a、b,a=b表示将b的值赋与a,此时a和b的值相等,却不是指向同一个引用,修改a和b中任何一个变量的值都会导致a!=b。

3.3 运算符

  1. +、-、*、/、%、+=、-=、*=、/=、%=
  2. ++、--(注意放在前后的区别:放在前表示先计算后取值返回,放在后表示先取值返回再计算)
  3. >、<、>=、<=、==、!=(注意对象的==和equals方法:==表示判断引用的对象地址是否相同,equals表示比较两个对象的内容是否相同(泛),还需注意java常量池技术)
  4. &&、||、!(短路:当一个表达式的值能够在某一次判断中准确得出,剩下的表达式部分将不被执行,比如a||b,如果a为true,那可以判断整个表达式为true,表达式b将不会执行)
  5. 直接常量:float(f/F)、double(d/D)、long(L/l)、hex(0x)、八进制(0)、浮点数(1.1e-5f)
  6. 按位操作符:&、|、^、~、&=、|=、^=
  7. 移位操作:>>、<<、>>>、>>=、<<=、>>>=
  8. 三元操作符:boolean-exp ? true-value : false-value
  9. 字符串拼接:+、+=(只要拼接的表达式中有一个是字符串,整个表达式都将返回字符串)
时间: 2024-10-12 12:43:17

[THINKING IN JAVA]操作符的相关文章

JavaSE复习日记 : Java操作符\关系运算符\逻辑运算符\赋值运算符\字符串连接符\三元运算符

// Java操作符\关系运算符\逻辑运算符\赋值运算符\字符串连接符\三元运算符 /* * 一 Java操作符 * * Java操作符都有哪些? * +, -, *, /, %, ++, -- * 这里需要注意 a++ 和 ++a 的区别,后面说; */ /* public class Javase{ public static void main(String[] args){ int a = 10; int b = 20; int c = 30; System.out.println( a

Java操作符

优先级 操作符用于操作数据并生成一个新值,当一个表达式中存在多个操作符时,操作符的优先级就决定了各部分的运算顺序.Java 对运算顺序做了特别的规定(最简单的就是先乘除后加减),而程序员经常会忘记一些运算顺序,所以应该用括号明确规定运算顺序. 1 public class Precedence { 2 public void main(String[] args) { 3 int x = 1, y = 2, z = 3; 4 int a = x + y - 2 / 2 + z; 5 int b

Java操作符,&lt;&lt;、&gt;&gt;等

数学意义:在数字没有溢出的前提下,对于正数和负数,左移一位都相当于乘以2的1次方,左移n位就相当于乘以2的n次方. 计算:3 << 2 3 << 2,则是将数字3左移2位 1.首先把3转换为二进制数字0000 0000 0000 0000 0000 0000 0000 0011 2.然后把该数字高位(左侧)的两个零移出,其他的数字都朝左平移2位,最后在低位(右侧)的两个空位补零. 3.则得到的最终结果是0000 0000 0000 0000 0000 0000 0000 1100,

Java操作符总结

Java语言中的表达式是由运算符与操作数组合而成的,所谓的运算符就是用来做运算的符号.        在Java中的运算符,基本上可分为算术运算符.关系运算符.逻辑运算符.位运算符.赋值运算符.转型运算符等. 一.算术运算符       所谓算术运算符,也就是我们数学中学到的加.减.乘.除等运算.这些操作可以对几个不同类型的数字进行混合运算,为了保证操作的精度,系统在运算的过程中会做相应的转换.      1.数字精度       所谓数字精度,也就是系统在做数字之间的算术运算时,为了尽最大可能

【Stackoverflow好问题】Java += 操作符实质

问题 直到今天,我都一直以为: i += j 等同于 i = i + j; 但假设有: int i = 5; long j = 8; 这时 i = i + j不能编译,但i += j却可以编译.这说明两者还是有差别的 这是否意味着,i += j,实际是等同于 i= (type of i) (i + j)呢? 精华回答: 这个问题,其实官方文档中已经解答了. 请看这里.§15.26.2 Compound Assignment Operators. 再照搬下官方文档的说明 对复合赋值表达式来说,E1

JAVA编程思想(2) - 操作符(一)

"在最底层,Java中的数据是通过操作符来操作的." 1. 使用Java操作符 -操作符接受一个或者多个參数,并生成一个新值,參数的形式与普通的方法调用不用,但效果是同样的.加号和一元的正号(+).减号和一元的负号(-).乘号(*).除号(/)以及赋值号(=)的使用方法与其它编程语言同样. 2. 优先级 -当一个表达式中存在多个操作符时,操作符的优先级就决定了各个部分的计算顺序. public class Precedence { public static void main(Str

Java编程思想笔记(操作符)

1.更简单的打印语句:print();     2.使用Java操作符:1.例外的操作符“=”.“==”.“!=”,这些操作符能操作所有的对象.2.String支持+=.+     3.优先级     4.赋值:直接操作对象内的域容易导致混乱     4(1).方法调用中的别名问题     5.算数操作符:Random rand = new Random(47);//随机生成器对于特定的种子值总是产生相同的随机数序列     5(1).一元加.减操作符     6.自动递增和递减:++a(先加,

[Thinking in Java]第3章-操作符

3.1 更简单的打印语句 3.2 使用Java操作符 3.3 优先级 3.4 赋值 3.5 算术操作符 3.6 自动递增和递减 3.7 关系操作符 3.8 逻辑操作符 3.9 直接常量 3.10 按位操作符 3.11 移位操作符 3.12 条件操作符 3.13 字符串操作符+和+= 3.14 类型转换 目录 3.1 更简单的打印语句 学习编程语言的同学遇到的第一个程序无非是打印Hello, world了,然而在Java中要写成 System.out.println("Hello, world&q

JAVA 基础 操作符

JAVA操作符 赋值操作符 赋值操作符(=)表示:取右边的值(即右值),把它复制给左边(即左值). 右值可以是任意的常量.变量或表达式(只要可以生成一个值). 左值必须是一个明确的.已命名的变量. public class Test {     public static void main(String[] args) {         int num = 10;         System.out.println("num = " + num);         num = 2