九天学会Java,第二天,算术运算
算术运算
先回顾上次我们提到的编程特性
- 变量和数据类型,赋值和输出
- 算术运算
- 选择结构
- 循环结构
- 函数定义,函数调用
- 变量作用域
- 栈,程序运行的基石
- 面向对象
- 异常处理
- 语言提供的公用包
第一天我们讲了“变量和数据类型,赋值和输出”,这次我们讲算术运算。
算术运算就是我们说的加减乘除,当然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,第一天,变量和数据类型,赋值和输出
用9天入门三门编程语言,有可能嘛,尤其是对没有基础的同学来说?对于想学好的编程的人来说,无论从哪一门语言开始入手,语言的本身其实并不是我们最应该的关心的,至少不是作为一个初学者首先关心的. 网络上,网 ...
- 九天学会Java,第三天,选择结构
选择结构 变量和数据类型,赋值和输出 算术运算 选择结构 循环结构 函数定义,函数调用 变量作用域 栈,程序运行的基石 面向对象 异常处理 语言提供的公用包 上一节介绍了Java的算术运算,如加减乘除 ...
- 九天学会Java,第四天,循环结构
变量和数据类型,赋值和输出 算术运算 选择结构 循环结构 函数定义,函数调用 变量作用域 栈,程序运行的基石 面向对象 异常处理 语言提供的公用包 这次我们讲Java的循环结构.循环结构在编程中广泛使 ...
- 九天学会Java,第五天,函数定义函数调用
变量和数据类型,赋值和输出 算术运算 选择结构 循环结构 函数定义,函数调用 变量作用域 栈,程序运行的基石 面向对象 异常处理 语言提供的公用包 什么是函数,为什么有函数,大家可能有这样的疑问. 举 ...
- 10天学会phpWeChat——第二天:hello world!我的第一个功能模块
今天我们开始进入<10天学会phpWeChat>系列教程的第二天:创建我的第一个hello world! 功能模块. 1.登录后台,进入 系统设置--自定义模块,如图: 自定义模块参数说明 ...
- 20155210潘滢昊 Java第二次试验
20155210潘滢昊 Java第二次试验 实验内容 学会JunitTest的使用 实验代码 MyUtilTest代码: import org.junit.*; import junit.framew ...
- 20165210 Java第二周学习总结
20165210 Java第二周学习总结 教材学习内容总结 - 第二章学习总结 标识符与关键字: 重点在50个关键字 标识符并不能是关键字 标识符的第一个字符不能是数字字符 Unicode字符集简单了 ...
- 【小白视频学Java for循环】3分钟学会Java的for循环,让看懂for循环嵌套再不是难事
目录 一.单个for循环介绍 二.for循环嵌套 听讲时能听懂的for循环为什么一做题就晕菜?一个for循环还勉强能看懂,但为什么一看到双重for循环脑子里就感觉脑子全是浆糊? 如果有上述问题那么就继 ...
- JAVA第二次blog总结
JAVA第二次blog总结 0.前言 这是我们在博客园上第二次写博客,进行JAVA阶段学习的总结.现在我们接触到JAVA已经有一段时间了,但难点还是在于编程思想和方法的改变,第二阶段的学习让我对于理解 ...
随机推荐
- 初次入坑jade模板引擎(一)
最近由于工作需要全栈开发,nodejs做后端,在写一个后台管理系统的时候,我一直在考虑用怎样的方式去写,尝试过依然采用前后端分离的结构.使用json数据进行数据交互的模式,但是尝试过才知道,真的很花时 ...
- BZOJ3575 HNOI2014 道路阻塞
3575: [Hnoi2014]道路堵塞 Time Limit: 10 Sec Memory Limit: 128 MB Description A国有N座城市,依次标为1到N.同时,在这N座城市间 ...
- css3变换,过度,动画实现梦幻网页
html和css3一出,整个互联网设计发生了颠覆性的改变,各大IT企业也推出了很多新颖的设计,比如百度浏览器的下载首页,fullpage设计风格加css动画让网页看起来很流畅舒服. css3的变换有3 ...
- 【菜鸟入门】安装配置eclipse 并编写运行第一个Java程序
不得不吐槽一下,安装配置这eclipse真是太费劲了...下面总结一下,以便下次再安装 本人 win10系统,64位机 一.在官网下载eclipse安装包 文件名:eclipse-inst-win64 ...
- C3制作导航栏分割线及立体风格
//首先写一个导航栏样式 .nav{ width:560px; height: 50px; font:bold 0/50px Arial; text-align:center; ...
- Java虚拟机:类加载机制详解
版权声明:本文为博主原创文章,转载请注明出处,欢迎交流学习! 大家知道,我们的Java程序被编译器编译成class文件,在class文件中描述的各种信息,最终都需要加载到虚拟机内存才能运行和使用,那么 ...
- Golang 基于libpcap/winpcap的底层网络编程——gopacket安装
Go简介 Go是一种编译型语言,它结合了解释型语言的游刃有余,动态类型语言的开发效率,以及静态类型的安全性. 语法类似C/C++,但是又带有一点python的味道 其中个人认为最出色的特点就是他的包管 ...
- 【SpringMVC】静态资源访问的问题
在项目中经常会用到一些静态的资源,而一般我们在配置SpringMVC时会让SpringMVC接管所有的请求(包括静态资源的访问), 那么我们怎样才能最简单的来配置静态资源的访问呢? 一,在web.xm ...
- Pandas: 如何将一列中的文本拆分为多行? | Python
Pandas: 如何将一列中的文本拆分为多行? 在数据处理过程中,经常会遇到以下类型的数据: 在同一列中,本该分别填入多行中的数据,被填在一行里了,然而在分析的时候,需要拆分成为多行. 在上图中,列名 ...
- java_AWT常用组件
Button:按钮,可接受单击操作. Canvas:用于绘图的画布. Checkbox:复选框组件(也可以变成单选框组件). CheckboxGroup:用于将多个Checkbox组件合成一组,一组C ...