[零基础学JAVA]Java SE基础部分-03. 运算符和表达式

简介:
1、课程名称:运算符、表达式 
讲解了JAVA中各种运算符的使用,包括与、或、非、大于、小于等。
2、知识点 
2.1、上次课程主要知识点回顾 
1、标识符命名:由字母、数字、下划线、$组成,其中不能以数字开头 
2、java的数据类型划分: 
· 基本数据类型 
· 引用数据类型 
3、 各种数据类型间的转换问题
2.2、本次课程预计讲解知识点 
1、运算符 
2、表达式
3、具体内容
本季目标
image
运算符
image
算术运算符
+:表示两个数字相加 
-:表示两个数字相减
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); 
    } 
}
image
image
image
*、/:乘法、除法
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);    
    } 
}
image
image
注意点: 
程序中如果使用了除法,则被除数不能为“0”
image
image
Char和int之间也是可以相互转换的。
image
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); 
    } 
}
image
image
%取模操作(取余数)
1/2的话是商为0,余1哈。
image
image
我们看下20/3余2的效果哈。
image
image
++和--操作
image 
· ++表示自增,自己可以增加一个 
· -- 表示自减,自己可以减少一个 
开发中++有两种情况:++i、i++ 
· ++i:表示的先自增再进行操作 
· i++:表示的是先进行操作再进行自增
第一个i++输出应该为20后再自增,第二个输出的i就已经是第一个i++后的21了哈,第三个语句++i是先进行自增后再操作应该输出22哈,所以输出应该为20、21、22,我们验证下效果哈。
image
image
开发中--操作也有两种: 
· --i:先自减,再操作 
· i--:先操作,再自减
我们把上面的例子修改下看看效果哈。
image
image 
关系运算符: 
返回的值是一个boolean值。完全可以使用一个boolean值去接收返回的内容。
我们来测试下哈:
image
image
public class Demo03 

    public static void main(String args[]) 
    { 
        int i=10; 
        int j=20; 
        System.out.println(i>j); 
    } 
};
image
image
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中“==”就表示判断两个数相等,如果是一个“=”表示的是赋值操作语句。
布尔逻辑运算: 
· !:表示非,表示与实际值相反。
我们修改下上面的例子哈:
image
image
输入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。 
image
image
显示false,为什么哈?false & true = false哈.
  image
image 以前我们说过,任何数都不能除以0,否则程序会出错,我们看下效果哈.
image
· true = 1;false = 0 
|- “&&”称为短路与,是与判断语句有关的。 
只要第一个条件是false,则以后永远是false,后面的条件不再判断了。
我们修改下上面的例子哈.加个&&看看效果.
image 
image
public class Demo06 

    public static void main(String args[]) 
    { 
        /* 
        if(布尔值){ 
            //如果值为true,则此处代码执行 
        } 
        */ 
        if (1/1!=1&&1/0==0) 
        { 
            System.out.println("条件满足"); 
        } 
    } 
};
没看到出错信息哈,因为加了“&&”短路与后, image 这个条件已经为false了,则以后永远是false,所以后面的条件不再判断了。
我们看下条件为true时的效果哈.
image
image
· 或操作(||、|) 
true || true = true 
true || false = true 
false || false = false 
false || true = true ; 
只要有一个是true,则其他的永远是true 
短路或:只要第一个条件为真了,则以后的条件都不用判断了。
image
第一个为true哈,应该显示true,我们看下效果.
image
我们来比较下||和|区别哈.
image
我们先看下||短路或,1/1==1为true,执行下面的语句显示51cto.blog哈。
image
显示正常哈。
那我们改成|非短路或呢?我们看下效果哈。
image
image
在判断第二个条件时出错了哈。
在代码开发中比较常用的就是“||”、“&&”。
位运算符
这在开发中不大常用哈.
赋值运算符=
这个应该非常熟悉了哈.
扩展赋值运算符
image
+=
image
image
-=
image
image
*=
image
image
/=
image
image
10/20为什么是0,不是0.5哈,我们说过这是因为整型变量损失精度的原因哈。我们要输出0.5的值,就要指定i为一个float变量类型。
image
image
字符串连接运算符
image 
字符串的连接操作: 
程序中如果使用“"”括起来的代码称为字符串。字符串的连接使用“+”
image
看下效果哈
image
注意:任何数据类型如果遇到了字符串,则肯定全部转换为字符串类型。
这句话我们验证下哈:
image
看到没,i和j全部转换成字符串类型输出了哈。
image
运算符优先级
image
我们可以使用()改变优先级
image
image 
表达式
image
三目运算符
image
本季重点
Java运算符及表达式








本文转自redking51CTO博客,原文链接: http://blog.51cto.com/redking/116751 ,如需转载请自行联系原作者
相关文章
|
4天前
|
Java
java lambda 表达式中的双冒号和箭头的用法
java lambda 表达式中的双冒号和箭头的用法
|
4天前
|
存储 Java 数据安全/隐私保护
【Java探索之旅】运算符解密 位运算,移位运算
【Java探索之旅】运算符解密 位运算,移位运算
15 0
|
4天前
|
算法 Java
【Java探索之旅】运算符解析 算术运算符,关系运算符
【Java探索之旅】运算符解析 算术运算符,关系运算符
12 0
|
4天前
|
Java
JAVA运算符应用与实践
JAVA运算符应用与实践
9 1
|
4天前
|
Java API
Java 8新特性之Lambda表达式详解
【4月更文挑战第29天】本文将深入探讨Java 8中引入的Lambda表达式,这是Java历史上的一次重大变革。我们将详细解析Lambda表达式的基本概念,语法结构,以及如何在实际编程中应用。此外,我们还将探讨Lambda表达式与函数式接口的关系,以及它如何改变我们编写和理解Java代码的方式。
|
5天前
|
存储 Java
Java语言--->数据类型转化以及运算符
本文讲述了Java中的基本数据类型转换和运算符。在转换中,布尔型除外的8种类型可通过默认或强制转换相互转化,如`byte->short->int->long->float->double`。默认转换发生在不同类型运算时,系统会转为更大容量类型。强制转换可能引起精度损失或溢出。运算符包括算术(如+可做加法或字符串拼接)、比较、逻辑和赋值运算符。比较运算符如`==`、`<`等产生`boolean`结果,逻辑运算符`&&`、`||`具有短路效应。赋值运算符如`+=`简化了赋值过程。运算符的优先级也进行了简要说明。
|
6天前
|
Java
Java运算符
Java运算符
|
6天前
|
并行计算 Java API
【专栏】Java中的Lambda表达式应用与实例解析
【4月更文挑战第27天】Java 8的Lambda表达式增强了函数式编程,允许以匿名函数形式传递行为。其基本语法`(params) -> expression/statements`,类型由参数推断,可引用final或effectively final的外部变量。Lambda广泛应用于集合操作(如Stream API)、并行流处理和GUI事件处理,简化代码并提高效率。通过实例,展示了Lambda在集合筛选、并行计算和事件处理中的应用,从而提高开发质量和效率。
|
8天前
|
Java 编译器 API
Java基础教程(17)-Java8中的lambda表达式和Stream、Optional
【4月更文挑战第17天】Lambda表达式是Java 8引入的函数式编程特性,允许函数作为参数或返回值。它有简洁的语法:`(parameters) -> expression 或 (parameters) ->{ statements; }`。FunctionalInterface注解用于标记单方法接口,可以用Lambda替换。
|
8天前
|
Java 测试技术 程序员
滚雪球学Java(21):Java正则表达式
【4月更文挑战第10天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
15 2
滚雪球学Java(21):Java正则表达式