class Demo02{
public static void main(String[] args){
//算数运算符 +,-,*,/,%,++,-- //例1
int a = 1;
int b = 2;
int c = 3;
System.out.println(a+b+c);
//结果 6
/*
a+b+c的执行流程
1:去内存中找a对应的数据
2:读取下一个运算符
3:读取a后面的操作数b,同事尧都区b后面的运算符,看是否先运行。
4:计算a+b的结果
5:把a+b的结果和c进行相加即可
*/ //例2
int a = 1;
int b = 2;
int c = 3;
int d = 4;
System.out.println(a+b+c*d);
//结果 15
/*
执行流程
1:先计算a+b的值
2:计算c*d
3:把a+b的值和c*d的值相加
*/ //例3
int a = 1;
int b = 2;
System.out.println((a=3)+(b=4)+a*b);
//结果 19 //例4
//面试题:请设计一个表达式,用于判断一个数据是否是奇数
//System.out.println(5%2);
//System.out.println(5%-2);
//System.out.println(-5%2);
//System.out.println(-5%-2);
//结果1,1,-1,-1
//结论:%是由前面的操作数提供运算结果的符号
return (i%2!=0) //例5
//++,--运算符
//int i = 1;
//i++; 是一个表达式,式子的值和i的值相同
//++i; 是一个表达式,式子的值是i+1以后的值
//++,--必须是一个变量
int i=1;
System.out.println(i+++i+++i+++i++);
//结果 10
// i++ + i++ + i++ + i++
// 1 + i++ + i++ + i++ i=2
// 1 + 2 + i++ + i++ i=3
// 1 + 2 + 3 + i++ i=4
// 1 + 2 + 3 + 4 i=5 //例6
int i=1;
System.out.println(i++ + ++i + i++ + ++i);
//结果12
//如果写System.out.println(i+++++i+i+++++i);编译器会报错 //例7
int i=0;
i=i++;
System.out.println(i);
//结果0
//i++作为表达式值为0,temp=0
//i=i+1; i=1;
//将temp赋值给i,i又变回为0
}
}

Java面试(2)-- Java算数表达式的更多相关文章

  1. [Java面试二]Java基础知识精华部分.

    一:java概述(快速浏览): 1991 年Sun公司的James Gosling等人开始开发名称为 Oak 的语言,希望用于控制嵌入在有线电视交换盒.PDA等的微处理器: 1994年将Oak语言更名 ...

  2. Java面试大纲-java面试该做哪些准备,java开发达到这样的水平可以涨工资

    Java培训结束,面临的就是毕业找工作.在找工作时,就要针对性地做充分的面试准备.准备不充分的面试,完全是浪费时间,更是对自己的不负责. 上海尚学堂Java培训整理出Java面试大纲,其中大部分都是面 ...

  3. Java面试系列--java基础

    Java基础总结 JAVA中的几种基本数据类型是什么,各自占用多少字节. 八大基本数据类型,byte:8位,short:16位,int:32位,long:64位,float:32位,double:64 ...

  4. Java面试之Java基础问题答案口述整理

    Java面试之基础问题答案口述整理 面向对象的理解 面向对象思想就是在计算机程序设计过程中,把具体事物的属性特性和行为特征抽象出来,描述成计算机事件的设计思想.它区别于面向过程的思想,强调的是通过调用 ...

  5. java面试2(java技术栈和Hollis面试内容分享)

    1.什么是java虚拟机? java虚拟机(JVM)是一个可执行java字节码的虚拟机进程,java源文件被编译成能被java虚拟机可执行的字节码文件. 2.什么是平台无关性,java是如何做到平台无 ...

  6. java面试:java基础、Io、容器

    1.java基础 1.JDK 和JRE有什么区别 ​ JDK:java开发工具包,java开发运行环境.包含了JRE. ​ JRE:java运行环境,包含java虚拟机,java基础类库. 2.jav ...

  7. java 面试,java 后端面试,数据库方面对初级和高级程序员的要求

    本内容摘自 java web轻量级开发面试教程 对于合格的程序员,需要有基本的数据库操作技能,具体体现在以下三个方面. l  第一,针对一类数据库(比如MySQL.Oracle.SQL Server等 ...

  8. 【JAVA面试】java面试题整理(4)

    版权声明:转载请注明 https://blog.csdn.net/qq_33591903/article/details/83473779                               ...

  9. 【Java面试】java基础篇

    总结个人的面试经历以及一些网上的的面试题,以供以后面试与巩固java基础. 1.String.StringBuilder和StringBuffer的区别 String用于存储不可变字符串的类,Stri ...

  10. 【Java面试】Java有几种文件拷贝方式,哪一种效率最高?

    "Java有几种文件拷贝方式,哪一种效率最高?" 这个问题是京东一面的时候,针对4年经验的同学的一个面试题. 大家好,我是Mic,一个工作了14年的Java程序员. 关于这个问题的 ...

随机推荐

  1. 【转】如何在Windows+VS2005使用最新静态libcurl 7.35.0获取网页数据,支持HTTPS

    地址: http://blog.csdn.net/hujkay作者:Jekkay Hu(34538980@qq.com)关键词:Windows,curl,ssl,  visual c++ 2005, ...

  2. 使用WindowsPE破解管理员密码

    使用WindowsPE破解管理员密码 1将操作系统关闭,编辑虚拟机设置,先用老毛桃生成一个ISO,点.iso制作,再点生成ISO文件,然后选择WinPE的ISO镜像存放的位置 将WinPE.ISO文件 ...

  3. Oracle中rownum和rowid的理解(转)

    本文转自地址http://www.linuxidc.com/Linux/2012-04/58300.htm rownum,rowid都叫伪列. 但是,rownum是逻辑上的编号,且其值总是从1开始,每 ...

  4. Win7 64位 VS2015环境编译cegui-0.8.5

    首先是去官网下载源码与依赖库 http://cegui.org.uk/ 然后得提一下,编译DX11版本带Effects11框架的话会有问题,也就是默认情况编译有问题,这是因为VS2015升级后编译器对 ...

  5. Manhattan distance(for lab)

    Input four integer x1, y1, x2, y2, which is mean that the coordinates of two points A(x1, y1), B(x2, ...

  6. PCFG -- 基于统计方法生成语法树

    语法树的作用 一棵语法树不仅包括了词性(part of speech), 还包括了短语(如名词短语, 动词短语)和结构化的信息(如主语, 谓语和宾语). 这些信息是进行机器翻译所必须的, 例如机器翻译 ...

  7. Backpropagation反向传播算法(BP算法)

    1.Summary: Apply the chain rule to compute the gradient of the loss function with respect to the inp ...

  8. Java的UUID

    UUID含义是通用唯一识别码 (Universally Unique Identifier),这 是一个软件建构的标准,也是被开源软件基金会 (Open Software Foundation, OS ...

  9. [laravel] Laravel - composer install

    #composer installLoading composer repositories with package informationUpdating dependencies (includ ...

  10. SQLSERVER中如何忽略索引提示

    SQLSERVER中如何忽略索引提示 当我们想让某条查询语句利用某个索引的时候,我们一般会在查询语句里加索引提示,就像这样 当在生产环境里面,由于这个索引提示的原因,优化器一般不会再去考虑其他的索引, ...