“又是新的一周,感觉要学的东西还有好多,加油。由于第三章和第四章内容要总结的不是很多,没太多需要拿出来说的,就整合到一个帖子好了”

操作符

  操组符,什么是操作符?其实就是+-*/=&^~| 等等。也有什么一元操作符,二元操作符等等,这些都比较基础,

  对于赋值操作符“=”,我们知道对于基本类型的常量赋值,是直接拷贝相同的值后,赋值到目的变量。但是对于对象的赋值,传递的是对于对象的引用。这样也就说,对于基本类型的赋值,若原来的值变了,新的赋值不会变。若是原来对象变了,新的也会变(@-@)。

  另外需要注意的是逻辑操作符的“短路”特性。其实这个也是比较基础的,在对于A&&B来说,如果A为false,则不会执行B。对于A||B来说,若A为ture,则不会执行B。

  移位操作,我们知道有>>,<<,>>>。>>>是java比较特殊的,意思是无符号右移,即无论为正为负,高位都补0.对于非int型,如char,byte,short等进行移位,则首先他们将自动转化为int,且得到的结果也是int型。

  说到转换,要注意的是在进行类型转换的“窄化转换”时,需要注意截尾与舍入问题。比如说一个float29.7转化为int,java会直接粗暴截取,结果为29.如果需要四舍五入的话需要使用math的函数。

  在java中,不管在什么类型的机器,数据所占的大小都是一样的,因此java程序员不需要考虑系统移植时的数据大小分配问题。

控制执行流程

  控制执行流程,其实就是if,while,for,switch等等,这块在其他的语言里也经常使用,大家也比较熟悉。其中有点细节的地方还是需要记一下。

  首先是逗号操作符。在java中,只有for循环用到了逗号操作符,即在for条件定义部分使用,按照逗号操作符按照顺序执行。

  java中有一个range()方法。可以输出一个指定范围内的数据。这样虽然可以提高程序的阅读性,以及更加简单。但是这个函数的效率还是比较低,不建议大量使用。

  goto语句的存在一直是褒贬不一。在java中,虽然goto是关键字,但是不能使用。但是也有其他方法可以实现类似goto的功能。那就是标签机制。使用方法是"lable: "(单独占一行)。在程序的循环运行中,可以使用break和continue带上标签,就能跳到标签的地方。

大家一起和snailren学java-(三) 操作符&控制执行流程的更多相关文章

  1. Java之路(三) 控制执行流程

    Java的控制语句设计的关键字有if-else while do-while for return break和switch. Java虽然保留goto关键字,但不支持goto语句. 1.true和f ...

  2. Java编程思想--控制执行流程

    java控制流程设计的关键字包括if-else,while,do-while,for,return,break,continue以及switch.(go-to) 1.while在迭代之前计算一次布尔表 ...

  3. Thinking In Java 4th Chap4 控制执行流程

    Foreach语法: 例如:float f[]=new float [10]; for(float x:f){/*****/} for(char c:"Afaslkd aslfjala al ...

  4. 《Java基础复习》-控制执行流程

    最近任务太多了,肝哭我了,boom 参考书目:Thinking in Java <Java基础复习>-控制执行流程 Java使用了C的所有流程控制语句 涉及关键字:if-else.whil ...

  5. java控制执行流程

    控制执行流程 欢迎转载,转载烦请注明出处,谢谢. https://www.cnblogs.com/sx-wuyj/p/11177257.html java当中涉及到的关键字包括if-else.whil ...

  6. [Java编程思想-学习笔记]第4章 控制执行流程

    4.1  return 关键字return有两方面的用途:一方面指定一个方法结束时返回一个值:一方面强行在return位置结束整个方法,如下所示: char test(int score) { if ...

  7. 深入理解java中HelloWorld的执行流程

    HelloWorld.java是我们学习java的第一个程序,简单的再也不能简单了,可是里面的原理以及执行流程大家都知道吗?最近在复习java知识,特地钻研了一番分享给大家! 贴出HelloWorld ...

  8. Java编程思想之四控制执行流程

    程序必须再执行过程中控制它的世界,并做出选择.在Java中,你要使用执行控制语句来做出选择. 4.1true和false 所有条件语句都利用条件表达式的真或假来决定执行路径. Java不允许使用数字作 ...

  9. [新手学Java]使用beanUtils控制javabean

    使用BeanUtils设置/读取属性的值以及默认支持的自动转化: @Test //使用BeanUtils设置/读取属性的值以及自动转化 public void test1() throws Illeg ...

随机推荐

  1. 为sourceinsight添加makefile、kconfig、*.S文件支持

    转载:http://www.cnblogs.com/myblesh/articles/2452030.html   大家用source insight看linux源码的时候都遇到这么一个麻烦,make ...

  2. Python单元测试框架之pytest -- 生成测试报告

    继续pytest单元测试框架的学习,pytest可以生成多种类型的测试报告.这一节就来学习pytest如何生成测试报告. 创建test_calss.py 测试用例文件,这里以测试该文件为例. #cod ...

  3. ASP.NET 让无码编程不在是梦 -.NET通用平台、通用权限、易扩展、多语言、多平台架构框架

    先拿出我半前年前平台的设计初稿,经过半年的努力我已经完成了该设计稿的所有功能.并且理念已经远远超出该设计稿. 下面是一些博友对我贴子的评价: 1.楼主,想法很美好,现实很骨感,我们公司就有一套你说的这 ...

  4. .net 根据匿名类生成实体类,根据datatable生成实体类,根据sql生成实体类

    在开发中可能会遇到这几种情况 1.EF或LINQ查询出来的匿名对象在其它地方调用不方便,又懒的手动建实体类 2.通过datatable反射实体需要先建一个类 ,头痛 3.通过SQL语句返回的实体也需要 ...

  5. html5中的大纲

    html5中的大纲 前言: 在html5中我们可以使用结构元素来编排一份大纲,这样我们就可以通过这个网页的大纲来了解网页中有哪些内容,网页中以什么样的形式来组织这些内容有更清楚的认识. 1.html5 ...

  6. linux内核更新前后配置文件的比较

    说明:这里先给出一个比较的结果,作为记录,后续会给出内核配置差异的详细解释. [root@xiaolyu linux-4.7.2]# diff .config .config_bak  3c3< ...

  7. JS 跨域问题常见的五种解决方式

    一.什么是跨域? 要理解跨域问题,就先理解好概念.跨域问题是由于javascript语言安全限制中的同源策略造成的. 简单来说,同源策略是指一段脚本只能读取来自同一来源的窗口和文档的属性,这里的同一来 ...

  8. ADO.NET---ExcuteScalar()方法复习

    ExcuteScalar(),返回的是查询结果的第一行第一列,返回值是object类型,一般用来查询表中有多少条数据,求最大值等 现在我们用ExcuteScalar()做个测试,需求:我要查询学生表里 ...

  9. 【循序渐进学Python】6.Python中的函数

    1. 创建函数 一个函数代表一个行为并且返回一个结果(包括None),在Python中使用def关键字来定义一个函数,如下: def hello(name): print 'hello,' + nam ...

  10. 重新想象 Windows 8 Store Apps (57) - 本地化和全球化

    [源码下载] 重新想象 Windows 8 Store Apps (57) - 本地化和全球化 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 本地化和全球化 本地化 ...