Java学习笔记02--运算符、表达式

赋值运算符号

一元运算符

算术运算符

关系运算符

递增与递减运算符

public class T {
    public static void main(String[] args) {
        int a = 3 , b = 3 ; // 定义两个变量a和b
        int x = 6, y = 6 ;  // 定义两个变量x和y
        System.out.println("a = " + a) ;
        System.out.println("\t a++ = " + (a++) + " , a = " + a) ;   // 先计算后自增
        System.out.println("b = " + b) ;
        System.out.println("\t ++b = " + (++b) + " , b = " + b) ;   // 先自增后计算
        System.out.println("x = " + x) ;
        System.out.println("\t x-- = " + (x--) + " , x = " + x) ;   // 先计算后自减
        System.out.println("y = " + y) ;
        System.out.println("\t --y = " + (--y) + " , y = " + y) ;   // 先自减后计算  

    }
}

运算结果

a = 3
     a++ = 3 , a = 4
b = 3
     ++b = 4 , b = 4
x = 6
     x-- = 6 , x = 5
y = 6
     --y = 5 , y = 5

逻辑运算符

不管是短路还是非短路,其基本的操作结果都是一样的。

现有如下的错误代码:

public class T {
    public static void main(String[] args) {
        int i = 10/0;
        System.out.println(i);
    }
}

以上的代码只要一运行就会出现问题。

public class T {
    public static void main(String[] args) {
        if(10!=10&10/0==0){
            System.out.println("条件满足");
        }
    }
}

短路与

public class T {
    public static void main(String[] args) {
        if(10!=10&&10/0==0){
            System.out.println("条件满足");
        }
    }
}

只要第一个条件满足,之后的程序代码都不在执行了。

位运算符

位运算符的结果表

public class T {
    public static void main(String[] args) {
        int x = 3 ;     // 3的二进制数据: 00000000 00000000 00000000 00000011
        int y = 6 ;     // 6的二进制数据: 00000000 00000000 00000000 00000110
        System.out.println(x & y) ; //与:    00000000 00000000 00000000 00000010
        System.out.println(x | y) ; //或:    00000000 00000000 00000000 00000111
        System.out.println(x ^ y) ; //或:    00000000 00000000 00000000 00000101
    }
}

版权声明:本文采用BY-NC-SA协议进行授权,转载麦田技术博客的文章请注明出处

原文地址:http://itmyhome.com/2015/03/java-study-notes-operator-expression

时间: 2024-11-05 14:00:26

Java学习笔记02--运算符、表达式的相关文章

Java学习笔记四——运算符

算术运算符 加减乘除(+.-.*./)就不说了. 求余运算符% 描述:第一个操作数除以第二个操作数,得到一个整除的结果后剩下的值就是余数 注意:求余预算的结果不一定总是整数,当操作数是浮点数时,结果可能是小数. double a = 5.2; double b = 3.1; double mod = a%b; System.out.println(mod);//值为2.1 自增运算符++ 自增运算符++有两个要点: ++是单目运算符只能操作一个操作数 ++只能操作在数值型(整数.浮点型)的变量上

JAVA学习笔记(二) - 运算符

变量与常量 变量的声明和赋值 /* * 变量的声明和赋值 */ public class Test { public static void main(String[] args) { // 1-可以声明的同时,对变量赋值:int x = 10; //局部变量,变量名符合命名规则. //推荐使用此种方式. int x = 10; // 2-可以先声明,再赋值:int x; x = 10; int y;//变量的声明 y = 20;//将20赋值给y指向的内存空间 // 3-可以一行声明多个变量:

Java学习笔记 02

一.String类一般字符串 声明字符串 >>String str 创建字符串 >>String(char a[])方法用于将一个字符数组创建为String对象 >>String(char a[],int offset,int length)方法用于提取字符数组a中的一部分创建一个字符串对象,参数offset表示开始截取字符串的位置,length表示截取字符串的长度 >>String(char a[] value)方法可用于分配一个新的String对象,使其

Java学习笔记——位运算符、方法、package包、键盘输入

位运算符: a>>b = a左移b位 = a*2^2 右移舍去低位 方法: method,function,与c函数类似 package包: 通常第一句 写域名倒着写 package --; 主要包: java.lang 核心类string.math.Integer.System.Thread等 java.awt 构建管理GUI java.net 网络相关 java.io 输入输出 java.util 定义系统特性.使用与日期日历相关的函数 (详见api) 键盘输入: 使用别的包的类需要imp

java学习笔记06--正则表达式

正则表达式可以方便的对数据进行匹配,可以执行更加复杂的字符串验证.拆分.替换等操作. 例如:现在要去判断一个字符串是否由数字组成,则可以有以下的两种做法 不使用正则表达式 [java] view plaincopy public class T { public static void main(String[] args) { String str = "0123456789"; boolean flag = true;   //定义一个标记变量 char c[] = str.toC

【8-20】java学习笔记02

others 初始化块在构造器前执行: 静态初始化块和实例变量显示初始化执行顺序为各自定义的位置: final类不能派生子类,final方法不可覆盖,final变量不可重新赋值: 判定值相等,String类已经重写了equals方法,其它类的equals方法需要重写才能实现值相等的判定: 单例类,只创建一个对象的类,用private修饰隐藏其构造函数,成员和函数用static修饰,public static修饰的方法,确保只产生一个对象: 不可变类:类一旦创建,其实例变量值不可变:field用f

Java学习笔记3-操作符

Java基本操作符:+.-.*./.%.=.==.!=.+=.-=. 优先级:先乘除后加减,如果是连接符+号会优先往前匹配,比如 a+++++b,会被解释称 a++ ++ +b,所以会报错,需要自行使用括号隔离为 (a++) + (++b). 对象的引用如果赋值给了对象的引用后,2 个对象将指向同一个引用,有一个对象的引用重新赋值后将同时影响到另一个对象,比如 ClassName classA = new ClassName(); ClassName classB = new ClassName

Struts2学习笔记(OGNL表达式)

Struts2学习笔记(OGNL表达式) Struts 2支持以下几种表达式语言: OGNL(Object-Graph Navigation Language),可以方便地操作对象属性的开源表达式语言: JSTL(JSP Standard Tag Library),JSP 2.0集成的标准的表达式语言: Groovy,基于Java平台的动态语言,它具有时下比较流行的动态语言(如Python.Ruby和Smarttalk等)的一些起特性: Velocity,严格来说不是表达式语言,它是一种基于Ja

Java学习笔记心得——初识Java

初识Java 拿到这本厚厚的<Java学习笔记>,翻开目录:Java平台概论.从JDK到TDE.认识对象.封装.继承与多态...看着这些似懂非懂的术语名词,心里怀着些好奇与担忧,就这样我开始走进Java的世界.  Java产生的历史 Java来自于Sun公司的一个叫Green Project中撰写的程序语言,全球信息网(World Wide Web)兴起,Java Applet成为网页互动技术的代表,特别适合于Internet应用程序开发. Java语言的特点 1.面向对象 这是Java最重要

java学习笔记3——java关键字

java学习笔记3——java关键字 虽然老师说不用刻意的去记忆,但是我还是在网上找到了非常详细的注解,再次收藏 关键字的类型表: 各个关键字的详细注解和实例,按首字母排序: 1.abstract abstract 关键字可以修改类或方法. abstract 类可以扩展(增加子类),但不能直接实例化. abstract 方法不在声明它的类中实现,但必须在某个子类中重写. -示例- public abstract class MyClass{ } public abstract String my