当前位置: 首页 > article >正文

Java 表达式、语句和块

1. 表达式

1.1 概念

表达式是由数字、运算符、数字分组符号(括号)、自由变量和约束变量等以能求得数值的有意义排列方法所得的组合。其中,约束变量是在表达式中已被指定数值的变量,自由变量则可在表达式之外另行指定数值。

在Java中,表达式是根据Java语法由变量、运算符和方法调用组成的结构,其结算结果为单个值。

1.2 分类
1.2.1 算数表达式

算数表达式是最常用的表达式,又称数学表达式,是通过算术运算符来进行运算的数学公式。使用Java进行算数运算,首先要声明变量,如:int num = 10;。变量创建后,可使用算数运算符(+、-、*、/、 %、++、 – )操作变量值。

例如:

public class ArithmeticExpression1 {
    public static void main(String[] args) {
        int num = 10;
        int result = num / 3;
        System.out.println(num + " / 3 = " + result);
    }
}

编译执行后,屏幕打印:10 / 3 = 3。对于操作数为整型的除法表达式,计算结果取整数部分。若想得到小数,可用浮点型变量作操作数,如10.0 / 3,返回值为浮点型。

使用自增 / 自减表达式运算时,要注意前后自增 / 自减运算符的差别。

public class ArithmeticExpression2 {
    public static void main(String[] args) {
        // 前自增
        System.out.println("------ 前自增 ------");
        int num = 10;
        System.out.println("++num = " + (++num));
        System.out.println("num = " + num);
        // 前自减
        System.out.println("------ 前自减 ------");
        num = 10;
        System.out.println("--num = " + (--num));
        System.out.println("num = " + num);
        // 后自增
        System.out.println("------ 后自增 ------");
        num = 10;
        System.out.println("num++ = " + (num ++));
        System.out.println("num = " + num);
        // 前自减
        System.out.println("------ 前自减 ------");
        num = 10;
        System.out.println("num-- = " + (num --));
        System.out.println("num = " + num);
    }
}

运行结果:

------ 前自增 ------
++num = 11
num = 11
------ 前自减 ------
--num = 9
num = 9
------ 后自增 ------
num++ = 10
num = 11
------ 前自减 ------
num-- = 10
num = 9

结论:前自增 / 自减先进行自增或自减运算,再进行表达式运算;后自增 / 自减先进行表达式运算,再进行自增或自减运算。

1.2.2 布尔表达式

布尔表达式的结果只有true(真)和false(假)两个值。在Java语言中,可使用关系运算符或逻辑运算符代替算数运算符。

例如:

publicclass BooleanExpression1 {
    public static void main(String[] args) {
        // 初始化两个整型变量a、b,值分别为2、3
        int a = 2, b = 3;
        // 分别打印比较运算符比较的结果
        System.out.println(a == b);
        System.out.println(a!= b);
        System.out.println(a > b);
        System.out.println(a < b);
        System.out.println(a >= b);
        System.out.println(a <= b);
    }
}

布尔表达式常作为条件分支语句中的条件。

publicclass BooleanExpression2 {
    public static void main(String[] args) {
        // 初始化4个整型变量
        int i = 4, j = 5, k = 7, m = 8;
        // i > j && m < k++ 即为条件表达式
        if(i > j && m < k++) {
            k++;
        } else {
            k--;
        }
        System.out.println("k = " + k);
    }
}

编译执行后,屏幕打印:k = 6。此例中,若布尔表达式i > j && m < k++为真,则执行if分支,k自增1;否则执行else分支,k自减1。因i小于j,且&&运算符有短路作用,所以m < k++不做运算,直接进入else分支。

逻辑运算符的短路:在表达式(a && b)中,若a为假,则b不会被求值,因为表达式必为假;在表达式(a || b)中,若a为真,则b不会被求值,因为表达式必为真。若想取消短路,可用&代替&&、|代替||,但不建议这样写,会降低代码可读性。

2. 语句

在计算机编程中,语句是指令式编程语言中最小的独立元素,用于表达程序要执行的动作。多数语句以高级语言编写成一个或多个语句序列,命令计算机执行指定操作。

语句和自然语言中的句子类似,一条语句构成完整的执行单元。通过使用英文分号(;)终止表达式,可将赋值表达式、自增 / 自减 ++ 或 --、方法调用、对象创建表达式(面向对象部分将会学到)制成语句。

例如:

  • 变量声明语句:int age;
  • 赋值语句:age = 20;
  • 自增语句:age ++;
  • 方法调用语句:System.out.println("Hello World! ");

3. 块

块通常用于将两条或多条语句组合在一起,使其在格式上更像一条语句。一堆语句可放在大括号中作为单个块执行,还可为其命名或提供执行条件(下一节的条件判断将会讲到)。

例如:

{
    int a = 1;
    int b = 2;
    int c = 3;
    int result = a + b + c;
}

http://www.kler.cn/a/556831.html

相关文章:

  • nginx配置:nginx.conf配置文件
  • spring中事务为什么会回滚?什么原理?
  • Vue 和 React 响应式的区别
  • 植物大战僵尸杂交版v3.2.1最新版本(附下载链接)
  • 1、Window Android 13模拟器 将编译的映像文件导入Android Studio
  • 《Zookeeper 分布式过程协同技术详解》读书笔记-2
  • [Android]AppCompatEditText限制最多只能输入两位小数
  • 在 VS Code 远程连接服务器时遇到 “Bad permissions“ 错误的解决方案
  • 如何在 Ubuntu 上安装 Docker:详细步骤指南
  • 关闭超时订单和七天自动确认收货+RabbitMQ规范
  • git 目前常用的一些命令整理记录
  • 安装Liunx(CentOS-6-x86_64)系统
  • 苍穹外卖day7 缓存菜品 SpringCache缓存套餐 增删改查购物车
  • Python:Matplotlib详细使用
  • 【RL Latest Tech】安全强化学习(Safe RL):理论、方法与应用
  • 贪心算法-买卖股票的最佳时机
  • 第四届图像、信号处理与模式识别国际学术会议(ISPP 2025)
  • VMware安装Centos 9虚拟机+设置共享文件夹+远程登录
  • docker独立部署milvus向量数据库
  • rust笔记8-Deref与隐式解引用强制转换