首页 > 编程语言 >Java 中的自增++和自减--运算符【小白必看】

Java 中的自增++和自减--运算符【小白必看】

时间:2024-08-31 22:57:33浏览次数:10  
标签:自增 Java ++ System 运算符 println out

Java 中的自增和自减运算符

 i++vs ++i

在学习 Java 编程语言时,自增(++)和自减(--)运算符是两个常见且基础的操作符。它们主要用于对变量进行简单的加减操作。以下我们将详细讲解这两个运算符的用法,并通过代码示例来帮助理解。


1. 自增运算符(++

自增运算符(++)用于将变量的值增加 1。在 Java 中,++ 运算符可以放在变量的前面(前缀),也可以放在变量的后面(后缀)。但它们的行为有所不同,具体如下:

  1. 前缀自增(++i:在执行表达式之前,变量的值先增加 1。
  2. 后缀自增(i++:在执行表达式之后,变量的值增加 1。
示例代码:
public class ArithmeticOperater {
    public static void main(String[] args) {
        int i = 10;

        // 独立使用自增运算符
        i++;  // 自增操作,等价于 i = i + 1;  此时 i 的值为 11
        ++i;  // 自增操作,等价于 i = i + 1;  此时 i 的值为 12
        System.out.println("i=" + i);  // 输出 i=12

        // 在表达式中使用自增运算符
        int j = 8;
        int k = ++j;   // 先自增,j 变为 9,然后将 j 的值赋给 k
        System.out.println("k = " + k + "\t" + "j = " + j);  // 输出 k = 9, j = 9

        int j1 = 8;
        int k1 = j1++; // 先将 j1 的值赋给 k1, 然后 j1 自增变为 9
        System.out.println("k1 = " + k1 + "\t" + "j1 = " + j1);  // 输出 k1 = 8, j1 = 9
    }
}
解释:
  • i++++i 的独立使用中,无论是前缀还是后缀自增,最终变量 i 的值都会增加 1。因此,这两种形式在作为独立语句时是等价的。
  • ++j 的表达式中,j 在赋值给 k 之前先增加了 1,因此 kj 的值都变为 9。
  • j1++ 的表达式中,j1 先被赋值给 k1,然后 j1 自增,因此 k1 的值是 j1 自增前的值(8),而 j1 自增后变为 9。
实际应用场景:

自增运算符常用于循环中,例如计数器的增量操作。

for (int i = 0; i < 10; i++) {
    System.out.println("当前计数: " + i);
}

2. 自减运算符(--

自减运算符(--)与自增运算符类似,只不过它将变量的值减 1。同样地,自减运算符也可以放在变量的前面(前缀)或后面(后缀),具体行为类似:

  1. 前缀自减(--i:在执行表达式之前,变量的值先减 1。
  2. 后缀自减(i--:在执行表达式之后,变量的值减 1。
实际应用场景:

在遍历数组或列表时,使用自减运算符可以从后向前遍历元素。

int[] arr = {1, 2, 3, 4, 5};
for (int i = arr.length - 1; i >= 0; i--) {
    System.out.println("当前元素: " + arr[i]);
}

3. 除法运算符(/)和取余运算符(%

在 Java 中,除法运算符用于两个数相除,取余运算符用于返回两个数相除的余数。

示例代码:
public class ArithmeticOperater {
    public static void main(String[] args) {
        // 除法运算
        System.out.println(10 / 4);  // 输出 2,整数除法结果为整数
        System.out.println(10.0 / 4);  // 输出 2.5,浮点数除法结果为小数

        // 取余运算
        System.out.println(10 % 3);  // 输出 1
        System.out.println(-10 % 3); // 输出 -1
        System.out.println(10 % -3); // 输出 1
        System.out.println(-10 % -3); // 输出 -1
    }
}
解释:
  • 10 / 4 的结果是 2,因为在整数除法中,小数部分会被截断。
  • 10.0 / 4 的结果是 2.5,因为有一个操作数是浮点数,结果也是浮点数。
  • 取余运算符 % 的计算规则为:a % b = a - (a / b) * b,因此在上述示例中得到相应的结果。
实际应用场景:

取余运算符在解决循环队列、判断奇偶数、计算时分秒等问题时非常有用。

int num = 11;
if (num % 2 == 0) {
    System.out.println(num + " 是偶数");
} else {
    System.out.println(num + " 是奇数");
}

总结

  • 自增、自减运算符:在独立语句中前缀和后缀作用相同,但在表达式中有差别。前缀操作符先进行自增/自减再赋值,而后缀操作符则是先赋值再自增/自减。
  • 除法运算符 /:用于数值的除法运算,注意整数除法会舍去小数部分。
  • 取余运算符 %:用于获取除法后的余数,在数值计算和循环控制中很常用。

在这里插入图片描述

标签:自增,Java,++,System,运算符,println,out
From: https://blog.csdn.net/Yhame/article/details/141759521

相关文章

  • JavaScript中数组;JavaScript中对象及方法;笔记分享;知识回顾
    一,JS中数组数组创建4种语法:<!DOCTYPEhtml><html><head><metacharset="UTF-8"><title></title><script>/*第一种......
  • JavaScript中DOW和BOW;笔记分享;知识回顾
    一,BOW1什么是BOWBOM是BrowserObjectModel的简写,即浏览器对象模型。BOM有一系列对象组成,是访问、控制、修改浏览器的属性的方法BOM没有统一的标准(每种客户端都可以自定标准)。BOM的顶层是window对象2,window对象及常用方法(1),什么是window对象Window对象描述:    ......
  • 【Java】Record的使用 (简洁教程)
    Java系列文章目录补充内容Windows通过SSH连接Linux第一章Linux基本命令的学习与Linux历史文章目录Java系列文章目录一、前言二、学习内容:三、问题描述四、解决方案:4.1为什么引入Record4.2Record与Class区别4.3使用场景五、总结:5.1场景使用5.2字段的定义......
  • 第四章 Java核心类库 第三节 集合框架
    1.集合框架概述与结构首先,我们来简单了解一下Java集合框架的概述和结构。集合框架的定义:Java集合框架是一组用来存储和操作数据集合的接口和类。它提供了一种统一的标准方法来操作不同的数据集合,极大简化了编程任务。集合框架的结构:集合框架包括三大主要接口:List接口:用......
  • Java基础(接口)
    目录为什么要有接口接口的定义接口的特点接口用interface定义定义接口类继承接口接口当中只能使用抽象方法接口类不能创建对象,只能用多态一个类可以继承多个接口实现接口中的方法接口和接口之间可以互相继承其他特点抽象类与接口的区别接口实例实例1Servlet......
  • java异常
    1.异常概念在程序中也是一样,程序猿是一帮办事严谨、追求完美的高科技人才。在日常开发中,绞尽脑汁将代码写的尽善尽美,在程序运行过程中,难免会出现一些奇奇怪怪的问题。有时通过代码很难去控制,比如:数据格式不对、网络不通畅、内存报警等。一位好的程序猿也要学习如何处理异常,完善......
  • 梁山县技工学校继续教育刷课脚本-JavaScript编写
    脚本学习网站:lsx.qzjystudy.com脚本地址:梁山县技工学校继续教育-刷课脚本教程1.插件安装(以MicrosoftEdge浏览器为例)打开最中间那个蓝色绿色的浏览器,谷歌之类的浏览器也可以点击屏幕右上角三个点,图示位置,然后点击扩展点击获取扩展搜索Tampermonkey,并点击获取那个绿......
  • Java毕设项目II基于Java的工厂车间管理系统设计与实现
    目录一、前言二、技术介绍三、系统实现四、论文参考五、核心代码六、源码获取全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末一、前言随着工业4.0时代的到来,车间管理的智能化......
  • JAVAEE初阶第二节——多线程基础(上)
    系列文章目录JAVAEE初阶第二节——多线程基础(上)计算机的工作原理认识线程(Thread)Thread类及常见方法线程的状态文章目录系列文章目录JAVAEE初阶第二节——多线程基础(上)计算机的工作原理一.认识线程(Thread)1.概念1.1为啥要有线程1.2线程1.2.1线程如何解决......
  • 学习公社刷课脚本-JavaScript编写
    脚本学习网站:教育干部网络学院:www.enaea.edu.cn脚本地址:教育干部网络学院-刷课脚本教程1.插件安装(以MicrosoftEdge浏览器为例)打开最中间那个蓝色绿色的浏览器,谷歌之类的浏览器也可以点击屏幕右上角三个点,图示位置,然后点击扩展点击获取扩展搜索Tampermonkey,并点击......