转自:http://redking.blog.51cto.com/27212/116751

1、课程名称:运算符、表达式
讲解了JAVA中各种运算符的使用,包括与、或、非、大于、小于等。
2、知识点
2.1、上次课程主要知识点回顾
1、标识符命名:由字母、数字、下划线、$组成,其中不能以数字开头
2、java的数据类型划分:
· 基本数据类型
· 引用数据类型
3、 各种数据类型间的转换问题
2.2、本次课程预计讲解知识点
1、运算符
2、表达式
3、具体内容
本季目标
运算符
算术运算符
+:表示两个数字相加
-:表示两个数字相减
Demo01:
public class Demo01
{
    public static void main(String arg[])
    {
        int i=3;
        int j=5;
        i=i+j; 
        //i+j==>i
        System.out.println(i);
        float f1=9.5f;
        float f2=2.5f;
        System.out.println(f1-f2);
    }
}
*、/:乘法、除法
Demo02:
public class Demo02
{
    public static void main(String args[])
    {
        int i = 30;
        int j = 3;
        System.out.println(i*j);
        System.out.println(i/j);   
    }
}
注意点:
程序中如果使用了除法,则被除数不能为“0”
Char和int之间也是可以相互转换的。
Demo02:
public class Demo02
{
    public static void main(String args[])
    {
        char i = 'A';
        int j = 10;
        j = i + j;
        i = (char)j;
        System.out.println(i);
    }
}
%取模操作(取余数)
1/2的话是商为0,余1哈。
我们看下20/3余2的效果哈。
++和--操作
 
· ++表示自增,自己可以增加一个
· -- 表示自减,自己可以减少一个
开发中++有两种情况:++i、i++
· ++i:表示的先自增再进行操作
· i++:表示的是先进行操作再进行自增
第一个i++输出应该为20后再自增,第二个输出的i就已经是第一个i++后的21了哈,第三个语句++i是先进行自增后再操作应该输出22哈,所以输出应该为20、21、22,我们验证下效果哈。
开发中--操作也有两种:
· --i:先自减,再操作
· i--:先操作,再自减
我们把上面的例子修改下看看效果哈。
 
关系运算符:
返回的值是一个boolean值。完全可以使用一个boolean值去接收返回的内容。
我们来测试下哈:
public class Demo03
{
    public static void main(String args[])
    {
        int i=10;
        int j=20;
        System.out.println(i>j);
    }
};
public class Demo03
{
    public static void main(String args[])
    {
        int i=10;
        int j=20;
        boolean b=i>j;
        System.out.println(b);
    }
};
b输出了false,证明完全可以使用一个boolean值去接收返回的内容。
注意点:
在java中“==”就表示判断两个数相等,如果是一个“=”表示的是赋值操作语句。
布尔逻辑运算:
· !:表示非,表示与实际值相反。
我们修改下上面的例子哈:
输入b的值相反true哈.
public class Demo04
{
    public static void main(String args[])
    {
        int i=10;
        int j=20;
        boolean b=i>j;
        System.out.println(!b);
    }
};
· 与操作(&&、&)
true & true = true
true & false = false
false & false = false
false & true = false
只要在相与的一端有一个是false,则结果都为false。
显示false,为什么哈?false & true = false哈.
 
以前我们说过,任何数都不能除以0,否则程序会出错,我们看下效果哈.
· true = 1;false = 0
|- “&&”称为短路与,是与判断语句有关的。
只要第一个条件是false,则以后永远是false,后面的条件不再判断了。
我们修改下上面的例子哈.加个&&看看效果.
 
public class Demo06
{
    public static void main(String args[])
    {
        /*
        if(布尔值){
            //如果值为true,则此处代码执行
        }
        */
        if (1/1!=1&&1/0==0)
        {
            System.out.println("条件满足");
        }
    }
};
没看到出错信息哈,因为加了“&&”短路与后, 这个条件已经为false了,则以后永远是false,所以后面的条件不再判断了。
我们看下条件为true时的效果哈.
· 或操作(||、|)
true || true = true
true || false = true
false || false = false
false || true = true ;
只要有一个是true,则其他的永远是true
短路或:只要第一个条件为真了,则以后的条件都不用判断了。
第一个为true哈,应该显示true,我们看下效果.
我们来比较下||和|区别哈.
我们先看下||短路或,1/1==1为true,执行下面的语句显示51cto.blog哈。
显示正常哈。
那我们改成|非短路或呢?我们看下效果哈。
在判断第二个条件时出错了哈。
在代码开发中比较常用的就是“||”、“&&”。
位运算符
这在开发中不大常用哈.
赋值运算符=
这个应该非常熟悉了哈.
扩展赋值运算符
+=
-=
*=
/=
10/20为什么是0,不是0.5哈,我们说过这是因为整型变量损失精度的原因哈。我们要输出0.5的值,就要指定i为一个float变量类型。
字符串连接运算符

字符串的连接操作:
程序中如果使用“"”括起来的代码称为字符串。字符串的连接使用“+”
看下效果哈
注意:任何数据类型如果遇到了字符串,则肯定全部转换为字符串类型。
这句话我们验证下哈:
看到没,i和j全部转换成字符串类型输出了哈。
运算符优先级
我们可以使用()改变优先级
 
表达式
三目运算符
本季重点
Java运算符及表达式
public class BasicDataTypeTest{

    public static void main(String args[]){

        int i ,j;
         i = 1;
         j = 2;
        System.out.println(i+j);         char a ,b ;
        a = 'a';
        b = 'b';
        int c = 6;
//        c = c + a;
        int d = b + c;
        char tmp ;
        tmp = (char )d ;
        int e = d - c ;
        tmp = (char) e;         System.out.println(a+b);
        System.out.println(d);
        System.out.println(e);         if(1/1==1||1/0==1)
            System.out.println("true");         if(1/1!=1&&1/0==1)
            System.out.println("false");
/*
        if(1/1==1|1/0==1)
            System.out.println("true");         if(1/1!=1&1/0 ==1)
            System.out.println("false");
*/         boolean t,f;         t =true ;
        f = false;
        boolean is ;
        is = t&&f;         float fl = 12.3f;         System.out.println(is);
        System.out.println(a+b+c+"hello"+fl);     }
}

[零基础学JAVA]Java SE基础部分-03. 运算符和表达式的更多相关文章

  1. Java学习笔记【三、运算符、表达式、语句】

    运算符 算数运算符 /* / % ++ -- 关系运算符 == != > /< >= /<= 位运算符 &(按位与,有0是0,否则1) |(按位或,有1是1,否则0) ...

  2. python基础复习-1-1文件类型、变量、运算符、表达式

    文件类型: .py python源文件 由python解释器执行 .pyc python源码编译后生成的文件(字节代码) 编译方法: 源码文件中使用py_compile模块 import py_com ...

  3. 076 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 01 Java面向对象导学

    076 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 01 Java面向对象导学 本文知识点:Java面向对象导学 说明:因为时间紧张,本人 ...

  4. 001 01 Android 零基础入门 01 Java基础语法 01 Java初识 01 导学

    001 01 Android 零基础入门 01 Java基础语法 01 Java初识 01 导学 welcome to Java World 欢迎来到Java世界 一起领略Java编程世界的奥秘与奥妙 ...

  5. 零基础学Java,PayPal技术专家手把手带你入门

    在最权威的 TIOBE 编程语言排名榜单上,Java 常年稳居第一,可以说是世界上应用最为广泛的一门语言. 同时,在微服务.云计算.大数据.Android App 开发等领域,Java 也是当之无愧的 ...

  6. 零基础学Java第四节(字符串相关类)

    本篇文章是<零基础学Java>专栏的第四篇文章,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! String 本文章首发于公众号[编程攻略] 在Java中,我们经 ...

  7. 零基础学Java第三节(基本输入输出)

    本篇文章是<零基础学Java>专栏的第三篇文章,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! 本文章首发于公众号[编程攻略] Java程序的命令行参数 我们可以 ...

  8. 零基础学Java第二节(运算符、输入、选择流程控制)

    本篇文章是<零基础学Java>专栏的第二篇文章,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! 第一章 运算符 1.1 算术运算符的概述和用法 运算符 对常量和变 ...

  9. 零基础学Java第一节(语法格式、数据类型)

    本篇文章是<零基础学Java>专栏的第一篇文章,从本篇文章开始,将会连更本专栏,带领大家将Java基础知识彻底学懂,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! ...

随机推荐

  1. DateTime.Now与DateTime.Today的区别

    区别如下图: DateTime.Now: 不仅显示日期 还显示当前时间: DateTime.Today: 只显示当前日期,没有时间

  2. [PY3]——创建多值映射字典?/defaultdict默认字典/setdefault()

    Defaultdict 默认字典 collections 模块中的 defaultdict(默认字典),可以用来构造“一个键映射多个值”这样的字典 如果你想保持元素的插入顺序就应该使用list, 如果 ...

  3. 有标号的DAG计数 II

    Description 给定一正整数n,对n个点有标号的有向无环图(可以不连通)进行计数,输出答案mod 998244353的结果 Solution 考虑 \(O(n^2)\) DP 枚举出度为 \( ...

  4. MySQL 5.7 解压版 安装教程(图文详细)[Windows]

    最近在学习中用到了MySQL数据库,在安装过程中遇到了不少问题,在翻了大半天百度后,问题基本都解决了,所以写一篇MySQL 5.7 解压版的图文详细安装教程. 至于为什么我会选择解压版而不是安装版,一 ...

  5. Java List集合和哈希表

    List集合和Set集合,先来看List集合. List集合存储元素的特点: 1.有序(List集合中的元素有下标):存进去是什么样,取出来还是什么样 2.可重复 可以结合以下的简单代码来看一看. i ...

  6. 基于bootstrap的图片轮播功能

    插入js及css支持: <link rel="stylesheet" href="css/bootstrap.min.css"/> <scri ...

  7. struts2 执行流程及工作原理

    在Struts2框架中的处理大概分为以下的步骤  1 用户发送请求: 2 这个请求经过一系列的过滤器(Filter)(这些过滤器中有一个叫做ActionContextCleanUp的可选过滤器,这个过 ...

  8. 模仿jquery的data

    jquery中,有这个方法 var obj = {}; $.data(obj,'name','jake'); console.info($.data(obj,'name')); console.inf ...

  9. javaweb servlet jsp简单笔记

    第二章: 1: web 俗称 : 万维网  www 2: web开发 的三大核心: HTML(网页) ,URL(定位),HTTP:(协议) 页面的分类: 静态页面: html+css 动态页面:jsp ...

  10. cf449D. Jzzhu and Numbers(容斥原理 高维前缀和)

    题意 题目链接 给出\(n\)个数,问任意选几个数,它们\(\&\)起来等于\(0\)的方案数 Sol 正解居然是容斥原理Orz,然而本蒟蒻完全想不到.. 考虑每一种方案 答案=任意一种方案 ...