算术运算

先回顾上次我们提到的编程特性

  • 变量和数据类型,赋值和输出
  • 算术运算
  • 选择结构
  • 循环结构
  • 函数定义,函数调用
  • 变量作用域
  • 栈,程序运行的基石
  • 面向对象
  • 异常处理
  • 语言提供的公用包

    第一天我们讲了“变量和数据类型,赋值和输出”,这次我们讲算术运算。

算术运算就是我们说的加减乘除,当然Java里还有一些逻辑与,逻辑或,自增自减等操作。

我们使用的计算机程序每天都在处理着很多算术运算,比如微信转账,要从你的账户减去钱,商家的账户加上钱。下面介绍基本的算术运算:

假设表格中的实例假设整数变量A的值为10,变量B的值为20:

操作符 描述 例子
+ 加法, 相加运算符两侧的值 A + B 等于 30
- 减法 - 左操作数减去右操作数 A – B 等于 -10
* 乘法 - 相乘操作符两侧的值 A * B等于200
/ 除法 - 左操作数除以右操作数 B / A等于2
取模 - 左操作数除以右操作数的余数 B%A等于0
++ 自增: 操作数的值增加1 B++ 或 ++B
-- 自减: 操作数的值减少1 B-- 或 --B
/**
* 本例子讲解基本的算术运算.
* 同时也回顾第一次讲的内容
*/
public class SecondLesson {
public static void main(String[] args) {
/**
* 知识点:1)新建变量,变量名是a,把10赋值给变量a
* b,c,d同理
*/
int a = 10;
int b = 20;
int c = 25;
int d = 10;
/**
* a + b 即是基本的算术运算,把a和b求和,结果值赋予等号左边的ans
* ans是一个新建的变量,保存了a+b的结果(第一章的知识)
* 把ans输出(第一章的知识)
*/
int ans = a + b;
System.out.println("a + b = " + ans);
/**
* ans还是原来那个变量,但是前面说过,变量的值可以被修改的
* a - b就是a减去b,结果赋值给ans
* ans的值会被改变
*/
ans = a - b;
System.out.println("a - b = " + ans);
/**
* 乘法
*/
ans = a * b;
System.out.println("a * b = " + ans);
/**
* 除法
*/
ans = b / a;
System.out.println("b / a = " + ans);
/**
* 取模,得余数
*/
ans = b % a;
System.out.println("b % a = " + ans);
ans = c % a;
System.out.println("c % a = " + ans);
/**
* a++,表示先把a赋值给ans,a再自增
*/
ans = a++;
System.out.println("a++ = " + ans);
/**
* ++d,表示先把d自增,再赋值给ans,所以和上面的输出不同,好好体会
*/
ans = ++d;
System.out.println("++d = " + ans);
}
}

这么一看,算术运算还挺简单,确实很简单。跟小学数学相差无几。再多提一下算术运算是遵守四则运算法则的。在数学中,当一级运算(加减)和二级运算(乘除)同时出现在一个式子中时,它们的运算顺序是先乘除,后加减,如果有括号就先算括号内后算括号外,同一级运算顺序是从左到右。

看下面例子


a = 10;
b = 20;
c = 30;
/**
* b和c先运算再和a相加
* 结果应该是 610
*/
ans = a + b * c;
System.out.println("a + b * c = " + ans);
/**
* a和b先相加,再和c相乘
* 结果应该是900
*/
ans = (a + b) * c;
System.out.println("(a + b) * c = " + ans);

总结

  • 算术运算和我们小学学习的四则运算一样
  • 运算的结果可以赋值给某个变量
  • a++是先用a原来的值,a再自增
  • ++a是先把a自增,再用a的值干点什么

作业

  • 如果我们今年有10万元,存在理财产品里,年化有4.5%的利息。 两年之后我把钱取出来去美国旅游,人民币换美元利率是6.89, 今天的10万元存两年,两年后能换多少美元呢

完整章节

九天学会Java,第一天,变量和数据类型,赋值和输出

九天学会Java,第二天,算术运算的更多相关文章

  1. 九天学会Java,第一天,变量和数据类型,赋值和输出

    用9天入门三门编程语言,有可能嘛,尤其是对没有基础的同学来说?对于想学好的编程的人来说,无论从哪一门语言开始入手,语言的本身其实并不是我们最应该的关心的,至少不是作为一个初学者首先关心的. 网络上,网 ...

  2. 九天学会Java,第三天,选择结构

    选择结构 变量和数据类型,赋值和输出 算术运算 选择结构 循环结构 函数定义,函数调用 变量作用域 栈,程序运行的基石 面向对象 异常处理 语言提供的公用包 上一节介绍了Java的算术运算,如加减乘除 ...

  3. 九天学会Java,第四天,循环结构

    变量和数据类型,赋值和输出 算术运算 选择结构 循环结构 函数定义,函数调用 变量作用域 栈,程序运行的基石 面向对象 异常处理 语言提供的公用包 这次我们讲Java的循环结构.循环结构在编程中广泛使 ...

  4. 九天学会Java,第五天,函数定义函数调用

    变量和数据类型,赋值和输出 算术运算 选择结构 循环结构 函数定义,函数调用 变量作用域 栈,程序运行的基石 面向对象 异常处理 语言提供的公用包 什么是函数,为什么有函数,大家可能有这样的疑问. 举 ...

  5. 10天学会phpWeChat——第二天:hello world!我的第一个功能模块

    今天我们开始进入<10天学会phpWeChat>系列教程的第二天:创建我的第一个hello world! 功能模块. 1.登录后台,进入 系统设置--自定义模块,如图: 自定义模块参数说明 ...

  6. 20155210潘滢昊 Java第二次试验

    20155210潘滢昊 Java第二次试验 实验内容 学会JunitTest的使用 实验代码 MyUtilTest代码: import org.junit.*; import junit.framew ...

  7. 20165210 Java第二周学习总结

    20165210 Java第二周学习总结 教材学习内容总结 - 第二章学习总结 标识符与关键字: 重点在50个关键字 标识符并不能是关键字 标识符的第一个字符不能是数字字符 Unicode字符集简单了 ...

  8. 【小白视频学Java for循环】3分钟学会Java的for循环,让看懂for循环嵌套再不是难事

    目录 一.单个for循环介绍 二.for循环嵌套 听讲时能听懂的for循环为什么一做题就晕菜?一个for循环还勉强能看懂,但为什么一看到双重for循环脑子里就感觉脑子全是浆糊? 如果有上述问题那么就继 ...

  9. JAVA第二次blog总结

    JAVA第二次blog总结 0.前言 这是我们在博客园上第二次写博客,进行JAVA阶段学习的总结.现在我们接触到JAVA已经有一段时间了,但难点还是在于编程思想和方法的改变,第二阶段的学习让我对于理解 ...

随机推荐

  1. ConcurrentLinkedQueue 源码 since java1.5

    1 父类 java.lang.Object 继承者 java.util.AbstractCollection<E> 继承者 java.util.AbstractQueue<E> ...

  2. 树上差分 (瞎bb) [树上差分][LCA]

    做noip2015的运输计划写了好久好久写不出来   QwQ 于是先来瞎bb一下树上差分    混积分 树上差分有2个常用的功能: (1)记录从点i到i的父亲这条路径走过几次 (2)将每条路径(s,t ...

  3. ubuntu下处理mysql无法启动故障一例

    故障现象: mysql无法启动 1: dmesg |grep mysql [101353.820000] init: mysql post-start process (9077) terminate ...

  4. webpack2 项目

    webpack2 项目   实例gif图: 目录截图: 目录介绍: dist目录(最后生成的目录,里面文件为配置webpack自动生成的): c/:css文件夹; i/:img文件夹; j/:js文件 ...

  5. HDU 6069

    Counting Divisors Problem Description In mathematics, the function d(n) denotes the number of diviso ...

  6. Python网络数据采集6-隐含输入字段

    Python网络数据采集6-隐含输入字段 selenium的get_cookies可以轻松获取所有cookie. from pprint import pprint from selenium imp ...

  7. [补档][ZJOI2007] 报表统计

    [ZJOI2007] 报表统计 题目 传送门 小Q的妈妈是一个出纳,经常需要做一些统计报表的工作.今天是妈妈的生日,小Q希望可以帮妈妈分担一些工作,作为她的生日礼物之一. 经过仔细观察,小Q发现统计一 ...

  8. html、js、django处理日期问题

    在html中使用日期控件,利用ngmodel将输入的值传到js里: <input type="date" ng-model="timeOps.test.a_time ...

  9. UITabbarController左右滑动切换标签页

    UITabbarController左右滑动切换标签页 每个Tabbar ViewController都要添加如下代码,建议在基类中添加:ViewDidLoadUISwipeGestureRecogn ...

  10. laravel框架cookie应用到中间件的理解

    昨天博主接到一个委托的需求,大数据同事想要在请求日志抓取数据,希望在我的每个页面进行cookie的种植,方便他们进行定位分析,我思考了一下,简单呀,首先考虑的是通过中间件进行cookie种植,但是随后 ...