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. js选择器

    原生JS选择器有getElementById.getElementsByName.getElementsByTagName和getElementsByClassName这四个,下面我就一个一个介绍这四 ...

  2. Mini projects #3 ---- Stopwatch: The Game

    课程全名:An Introduction to Interactive Programming in Python,来自 Rice University 授课教授:Joe Warren, Scott ...

  3. C#数据结构杂记

    定义任何类时记得要定义无参构造函数,否则在反序列化的时候会抛出异常. [Serialize]声明该类可以被序列化 Const与readonly的区别 const本质上是常量没有任何方法修改值,read ...

  4. (01背包变形) Cow Exhibition (poj 2184)

    http://poj.org/problem?id=2184   Description "Fat and docile, big and dumb, they look so stupid ...

  5. HashMap LinkedHashMap源码分析笔记

    MapClassDiagram

  6. 如何去掉底部的织梦版权信息powered by dedecms

    由于织梦DEDECMS程序6月份的漏洞,很多织梦网站都被黑了,所以大家都在抓紧时间更新系统补丁.但是这次的DEDECMS V5.7版本更新后,在前台网页底部会出现织梦版权信息 “powered by ...

  7. java war包加载提示jar not loaded

    今天在开发的时候,项目需要加载Guvnor的war包.War包部署后,启动tomcat提示jar not load 后来查阅资料后发现是Jar包冲突导致的,冲突的Jar包在tomcat中已经存在,然后 ...

  8. HTML5-属性

    点击图片打开详细介绍页面

  9. Transactional replication-如何跳过一个事务

    在transactional replication, 经常会遇到数据同步延迟的情况.有时候这些延迟是由于在publication中执行了一个更新,例如update ta set col=? Wher ...

  10. 视频教程--ASP.NET MVC 使用 Petapoco 微型ORM框架+NpgSql驱动连接 PostgreSQL数据库

    说好的给园子里的朋友们录制与<ASP.NET MVC 使用 Petapoco 微型ORM框架+NpgSql驱动连接 PostgreSQL数据库> 这篇博客相对应的视频,由于一个月一来没有时 ...