大家一起和snailren学java-(三) 操作符&控制执行流程
“又是新的一周,感觉要学的东西还有好多,加油。由于第三章和第四章内容要总结的不是很多,没太多需要拿出来说的,就整合到一个帖子好了”
操作符
操组符,什么是操作符?其实就是+-*/=&^~| 等等。也有什么一元操作符,二元操作符等等,这些都比较基础,
对于赋值操作符“=”,我们知道对于基本类型的常量赋值,是直接拷贝相同的值后,赋值到目的变量。但是对于对象的赋值,传递的是对于对象的引用。这样也就说,对于基本类型的赋值,若原来的值变了,新的赋值不会变。若是原来对象变了,新的也会变(@-@)。
另外需要注意的是逻辑操作符的“短路”特性。其实这个也是比较基础的,在对于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-(三) 操作符&控制执行流程的更多相关文章
- Java之路(三) 控制执行流程
Java的控制语句设计的关键字有if-else while do-while for return break和switch. Java虽然保留goto关键字,但不支持goto语句. 1.true和f ...
- Java编程思想--控制执行流程
java控制流程设计的关键字包括if-else,while,do-while,for,return,break,continue以及switch.(go-to) 1.while在迭代之前计算一次布尔表 ...
- Thinking In Java 4th Chap4 控制执行流程
Foreach语法: 例如:float f[]=new float [10]; for(float x:f){/*****/} for(char c:"Afaslkd aslfjala al ...
- 《Java基础复习》-控制执行流程
最近任务太多了,肝哭我了,boom 参考书目:Thinking in Java <Java基础复习>-控制执行流程 Java使用了C的所有流程控制语句 涉及关键字:if-else.whil ...
- java控制执行流程
控制执行流程 欢迎转载,转载烦请注明出处,谢谢. https://www.cnblogs.com/sx-wuyj/p/11177257.html java当中涉及到的关键字包括if-else.whil ...
- [Java编程思想-学习笔记]第4章 控制执行流程
4.1 return 关键字return有两方面的用途:一方面指定一个方法结束时返回一个值:一方面强行在return位置结束整个方法,如下所示: char test(int score) { if ...
- 深入理解java中HelloWorld的执行流程
HelloWorld.java是我们学习java的第一个程序,简单的再也不能简单了,可是里面的原理以及执行流程大家都知道吗?最近在复习java知识,特地钻研了一番分享给大家! 贴出HelloWorld ...
- Java编程思想之四控制执行流程
程序必须再执行过程中控制它的世界,并做出选择.在Java中,你要使用执行控制语句来做出选择. 4.1true和false 所有条件语句都利用条件表达式的真或假来决定执行路径. Java不允许使用数字作 ...
- [新手学Java]使用beanUtils控制javabean
使用BeanUtils设置/读取属性的值以及默认支持的自动转化: @Test //使用BeanUtils设置/读取属性的值以及自动转化 public void test1() throws Illeg ...
随机推荐
- 【转载】如何使用 gnome-screenshot 截图命令
转载自:http://www.linuxeden.com/html/softuse/20130726/141753.html 日常工作中,我们经常需要截取屏幕状态来给其他人看.一般情况下,我们能最直接 ...
- 配置内存中OLTP文件组提高性能
在今天的文章里,我想谈下使用内存中OLTP的内存优化文件组来获得持久性,还有如何配置它来获得高性能.在进入正题前,我想简单介绍下使用你数据库里这个特定文件组,内存OLTP是如何获得持久性的. 内存中O ...
- JavaScript 中变量、作用域和内存问题的学习
这是我学习JavaScript的第二篇文章,之前做过几年的Java开发,发现JavaScript虽然也是面向对象的语言但是确实有很多不同之处.就本篇博客,主要学习总结一下最近学习到的JavaScrip ...
- [Solution] 使用Autofac在MVC、Web API、WCF中实现IOC
本来想聊一下面试过程的,1个星期面了6家,4家当场给offer,2家技术通过(1家没下文,1家复试).从中也学习到一些东西,先还是继续Coding吧. 官网:http://autofac.org/ 下 ...
- Gradle学习系列之一——Gradle快速入门
这是一个关于Gradle的学习系列,其中包含以下文章: Gradle快速入门 创建Task的多种方法 读懂Gradle语法 增量式构建 自定义Property 使用java Plugin 依赖管理 构 ...
- C#操作IIS程序池及站点的创建配置
最近在做一个WEB程序的安装包:对一些操作IIS进行一个简单的总结:主要包括对IIS进行站点的新建以及新建站点的NET版本的选择,还有针对IIS7程序池的托管模式以及版本的操作:首先要对Microso ...
- Asp.Net 三层架构之泛型应用
一说到三层架构,我想大家都了解,这里就简单说下,Asp.Net三层架构一般包含:UI层.DAL层.BLL层,其中每层由Model实体类来传递,所以Model也算是三层架构之一了,例外为了数据库的迁移或 ...
- csharp: Socket
https://github.com/joeandaverde/socket.io-csharp-client http://websocket4net.codeplex.com/ http://ww ...
- 从零开始学习Linux(mkdir and rmdir)
今天说mkdir 和 rmdir.因为mkdir 内容比较少.而且也很好理解. 对于mkdir来说,一般只用到 -p -m,我只用过-p参数,-m也是刚刚看的. 先说不带参数的: mkdir tes ...
- 配置文件,环境配置和war报分离,方便生产更改
在生产环境实现配置文件和war包 的分离,为方便在必要的时候进行一定的更改,可以避免修改包,但是需要重启 最初为这样的选择配置,单不知为何未生效,修改为配置2配置方法,但不灵活,待跟进.配置1: &l ...