美文网首页
3.Java操作符

3.Java操作符

作者: 云木杉 | 来源:发表于2019-02-15 15:33 被阅读0次

操作符

java这些基础的东西,我已经用了很久,潜意识来讲已经牢记于心,但看到公司老大那么6的以Java很基础的东西解决我困恼已久的问题,还是惊艳到了,还是再回去研究研究基础是正道。

赋值

  • 基本数据类型赋值:做赋值操作时,左边为变量,右边为值,例如i = 0;而书中的意思是右边的值需要一个物理控件去储存(就是Java的内存);

  • 对象赋值

    创建一个对象Kand,里面有一个参数level,创建这个对象的两个引用A,B,给两个引用分别赋值两个数值,然后把B赋值给A,当前A的旧引用被回收机制回收,A,B引用指向同一个数值,再修改任何一个引用的数值时,另一个数值也会跟着变化。尽量避免对象赋值操作。

    public static void main(String[] args) {
          Tank t1 = new Tank();
          Tank t2 = new Tank();
          t1.level = 9;
          t2.level = 47;
          System.out.println(t1.level); // 9
          System.out.println(t2.level); // 47
          System.out.println("----------");
          t1 = t2;
          System.out.println(t1.level); // 47
          System.out.println(t2.level); // 47
          System.out.println("----------");
          t1.level = 27;
          System.out.println(t1.level); // 27
          System.out.println(t2.level); // 27
          System.out.println("----------");
          t2.level = 270;
          System.out.println(t1.level); // 270
          System.out.println(t2.level); // 270
      }
    

Java操作符

加号(+)及减号(-)其实都是比较常见的基础操作,但乘号(*)及除号(/)的操作还是要说一下,虽然一直感觉自己是会的,但确实不会

  • 乘号(*) 当两个整数型做乘法时结果为整数,但是当有一方为浮点数时,那结果即为浮点数
  • 除号(/) 当两个整数型做除法时,结果为整数,如果除不净的话会取整(丢失小数位),当其中一位为浮点数时,获取到的值才为正确的。
  • 取余(%) 从整数除法中产生余数。

Random类

  • 初始化时,如果没有传递任何参数,将会以当前时间作为随机数生成器的种子

  • 初始化时,有携带参数(提供种子),随机数生成器对于特定的种子值总是产生相同的随机数序列。

     public static void main(String[] args) {
            // Create a seeded random number generator:
            Random rand = new Random(68);
            int i, j, k;
            // Choose value from 1 to 100:
            j = rand.nextInt(100) + 1;
            print("j : " + j);
            k = rand.nextInt(100) + 1;
            print("k : " + k);
     }
    

自动递增,自动递减

一直以来对运算符这块儿,都没有什么特别的概念,觉得挺简单的东西,但日子一长容易忘记,翻过来再看的话也是麻烦,这里记录一下

前缀式/后缀式

  • 前缀式自动递增/递减(++i,--i),其实就是先运算后赋值的操作,例如++i,原始值为1的话,经过运算+1以后再赋值,输出即为2。先运算再赋值;
  • 后缀式自动递增/递减(i++,i--),是一种先赋值后运算的操作,例如i++的原始值为1的话,会先赋值,后运算,即输出为1,后赋值为2。先赋值再运算;
public static void main(String[] args) {

        int i = 2, j = 2;

        System.out.println("i++ = " + i++); // 2
        System.out.println("i = " + i); // 3
        System.out.println("++i = " + ++i); // 4
        System.out.println("i = " + i); // 4

        System.out.println("j-- = " + j--); // 2
        System.out.println("j = " + j); // 1
        System.out.println("--j = " + --j); // 0
        System.out.println("j = " + j); // 0

}

关系操作符

  • 操作符==和!=比较的是对象的引用地址。基本数据类型用的也是==和!=操作符,这也是我一直模糊不清也又没真正去深究过的东西。

  • Object的euqals()方法,用来比较所有对象的实际内容。

    public class Equivalence {
      public static void main(String[] args) {
        Integer n1 = new Integer(47);
        Integer n2 = new Integer(47);
        System.out.println(n1 == n2); // false
        System.out.println(n1 != n2); // true
      }
    }
    

类型转换操作符

  • 对基本数据类型执行算数运算或按位运算,只要比类型int小(char、short、byte)运算之前都会转为int。

  • 按位操作符用来操作整数基本数据类型中的单个“比特(bit)”

关系操作符

  • 三位运算符有返回值返回,ifelse运算没有返回值,但比三位运算符更好理解。

相关文章

  • 3.Java操作符

    操作符 java这些基础的东西,我已经用了很久,潜意识来讲已经牢记于心,但看到公司老大那么6的以Java很基础的东...

  • Rxjava2-二、操作符

    Rxjava记录总结操作符:创建操作符、转换操作符、合并操作符、过滤操作符、其他操作符、条件操作符. 创建操作符 ...

  • 3.JAVA基础

    JAVA基础 JAVA中的几种基本数据类型是什么,各自占用多少字节。 String类能被继承吗,为什么。 Stri...

  • Kotlin 笔记(二)集合和函数操作符

    总数操作符 过滤操作符 映射操作符 元素操作符 生产操作符 顺序操作符

  • 走进RxJava源码(三) -- 创建型操作符

    创建型操作符 create操作符 just操作符 fromArray操作符 empty操作符 range 操作符

  • RxJava2操作符

    操作符分类 操作符分类有十三种: 变换操作符 过滤操作符列表 组合操作符 错误处理操作符 辅助操作符 条件操作符 ...

  • js运算符与表达式

    操作符 一元操作符:++,-- 算术操作符:+,-,*,/,% 关系操作符:>,<,>=,<= 相等操作符:==,...

  • 操作符和表达式

    操作符 一元操作符(++,--) 算术操作符(+,-,*,/,%) 关系操作符(>,<,>=,<=,) 相等操作符...

  • Rxjava讲解(2)

    上面文章讲过创建操作符, 转换操作符,过滤操作符, 这篇文字介绍组合操作符,条件操作符,功能操作符。 组合操作符 ...

  • JavaScript高程读书笔记(2)

    五、操作符 算数操作符、位操作符、关系操作符、 相等操作符 一元操作符++和--:注意a+++,- 位操作符按位非...

网友评论

      本文标题:3.Java操作符

      本文链接:https://www.haomeiwen.com/subject/qigvpftx.html