文档章节

D3>java基础(运算符,语句)

frzw
 frzw
发布于 2017/05/24 23:36
字数 2183
阅读 15
收藏 0

*自学总借,如有错误,欢迎指正*

1:比较运算符&逻辑运算符::比较运算符>(==,<=,>=,!=,<,>instanceof(检查是否是类的对象))>结果都是布尔类型,注意不要将==写成=;

                                                  逻辑运算符>(!,&,|,^,&&(短路),||(短路))

2:逻辑运算符::^(如果两边相同则为假);

                              &&(如果左边为假右边不参加运算,这比&具有高效性,其他与&一样);

                               ||(如果左边为真右边不参加运算,这比|具有高效性,其他与|一样);

3:位运算符::&,|,^(一个数异或同一个数两次,结果还是这个数),~(取反:~6=-7:取反码再加1=~原数)                            注意>都是再二进制的环境下运算的,1位真,0为假。

4:移位运算符::<<(左移几次就是该数乘以2的几次方)

                              >>(右移几次就是该数除以2的几次方)(对于高位出现的空位,原来高位是什么就补什么)

                               >>>(无符号右移,与>>唯一不同就是无论原来高位是什么都补0)

5:位运算符练习1::最有效的方式算出2乘以8?原始方法:计算机的二进制乘法(跟十进制的乘法一样)

                                                                            最有效方法:2<<3(当乘数是2的倍数用左移;推出右移的应用)

6:位运算符练习2::对两个数值进行交换(不使用中间变量)?

                                                                        原始方法:定义中间变量(实际开发中使用,因为阅读性较强)

                                                                        进阶方法:两数相加,再减分别减去对应的数得对应得数(不推荐,数大了相加容易超出对应数据类型得范围);异或:一个数异或同一个数两次等于这个数(面试用)这两个方法阅读性不强。

7:三元运算符::格式>(条件表达式)?表达式1:表达式2;条件为真则结果为表达式1·,为假则结果为表达式2。

8:三元运算符应用::求两个数中的最大数?int a,b;max=(a>b)?a:b;(内容不多可以不写括号)

                                    求三个数中的最大数?int a,b,c;int temp=(a>b)?a:b;int max=(temp>c)?temp:c;或者int max=(a>b?a:b)>c?temp:c;(但阅读性不行)

 9:语句-if格式一::程序流程控制(顺序结构,条件结构,选择结构,循环结构)

                               if(条件表达式){执行语句;}

                              注意:if语句必须要明确自己的控制范围即后面的{},但是如果后面是单条语句则不需要。单条语句是个整体,如:if(条件表达式){执行语句;}这也是一个单条语句。

   10:语句-if格式二::if(条件表达式){执行语句;}else{执行语句;}  

                                     if语句可以输出为初始化的变量,因为if语句只要满足条件必须输出这个变量,也可以理解为强制初始化并输出。

                                  注意 :三元运算符就是其简写形式,但是有局限性,其使用应在当if esle运算后有一个具体的结果时,可以简化成三元运算符,也就是说其不能打印只能运算出结果(结果就是数据值)。

11:语句-if格式三::if(条件表达式){执行语句;}else if(条件表达式){执行语句;}…else{执行语句}(只有一个语句会执行)

                                     注意:顺序结构在整个程序中,故语句会按顺序执行下去直到结束。

                                                分号是语句的结束标志。if(false);{Sysrtem.out.println("if“);}前后没有关系。

12:局部代码块::主函数里的变量叫局部变量,主函数中的{执行语句;}花括号叫局部代码块。

                                应用>假如后面不需要此变量,就用{}封装使变量释放内存,节省内存空间,优化。总而言之,局部代码块可以定义局部变量的生命周期。

13:if语句练习-星期::注意:if()括号中是布尔类型,i=1不是,应为i ==1,因为=是赋值运算符,==是逻辑运算符。还有,定义类名是注意别多打空格。   

14:if语句练习-季节::(当条件对应内容一致时,要将条件合并)注意:cd是退档dos命令符>语句是以;结束,别打太快打成:>&&是逻辑与,||是逻辑或,与是一否全否,或是一对全对,如:if(season==1||season==2||season==3);>特别,思维要严谨,要考虑周道;特别注意,解决问题的方法不止一个,要多思考。>还有打代码的时候注意多摁ctrl s保存刷新。    

15:选择结构 ::格式:switch(表达式){case 取值一:执行语句;break;…… ;defaulrt:执行语句;break;} 。

                                 其中,表达式是被选择的对象,case标识被选答案 ,取值是答案值,执行语句是答案值具体内容 ,break是选中答案后起结束选择跳出switch的作用,如果case都不对,则default(默认)是默认的选择。注意:每个被选答案都要以break结尾。

                                 使用范围:只能选择byte,char,int,char四种类型。(其他范围(如:long)太大不switch)

                                  特点:答案前后无顺序,但是执行有顺序,先顺序执行case,最后default。挨着大括号的break可以省略不写,因为往下走有花括号意味着结束。当default没有break,case都不对,而且default下面还有case,那么default的执行语句输出后还会往下执行,这时default下面可执行的case将直接输出执行语句不用与被选择对象匹配(因为它已经有答案匹配了),直到break或者花括号。

16:语句-switch-练习::当多答案标识对应一个答案内容,则可以只写一个答案内容。如:case 1: case 2:case3:System.out.println(" ***");

17:if和switch的语句的区别::if>一:对具体的值进行判断;二:对区间进行判断;三:对运算结果是布尔类型的表达式进行判断;

                                                   switch>一:对具体的值进行判断;二:值的个数经常是固定的;

                                                 所以,对几个固定的值判断,建议使用switch语句,因为switch语句会将具体的答案加载进内存,执行的效率相对高一点。

18:语句-while::格式:while(表达式){执行语句;}

                               循环必须有的两个条件:一:循环条件;二:循环次数(防止死循环)。

                               注意:while(条件表达式);{执行语句;}时,while是没有循环体的,因为多了分号。

19:语句-do while::格式:do(执行语句;)while(条件表达式);

                                    特点:无论条件是否满足,do都要执行一次。

20:while练习-累加思想::注意:输出一次就把输出语句放在循环体外面(累加如此)。变量初始化。

21:while练习-计数器思想::特别注意:i不能为0,因为要求是1到100的数字。0取余任何数都为0。

22:语句-for::格式:for(初始化表达式;循环条件表达式;循环后的操作表达式){执行语句;(循环体)}                             

                                                  转圈顺序:初始化表达式先执行且只执行一次>若循环条件表达式为真(为假直接结束循环)>循环体>循环后的操作表达式>判断循环条件表达式真假>……

                        注意:理解表达式这三个字。for(System.out.println("a"),int s=0;x<=4;System.out.println("b"){System.out.println("c");x++;}这段代码是对的,要理解这三个字。此外,不要忽略循环增量x++,其控制循环次数防止死循环。

23:for练习-for与while的区别::一:for和while可以互换。二:格式上的不同,在使用时有点小区别:如果需要通过变量来对循环进行控制,改变量只作为循环增量存在时,区别就体现出来了。(由于循环变量的作用范围不同,导致while较之容易浪费内存(因为在花括号后还可以输出循环一次变量),故for用的较多)

                                                       无限循环最简单的形式:while(ture){}。for(;;){}。

24:循环结构的使用场景::     一:当对某些代码执行很多次时,使用循环结构完成。二:当对一个条件进行一次判断时,可以使用if。三:当对一个条件进行多长判断时,可以使用while。

                                                  注意:在使用循环时要明确哪些语句参与循环,哪些不参与。

                                                             循环通常情况下,需要定义条件,需要控制次数。

© 著作权归作者所有

共有 人打赏支持
frzw
粉丝 1
博文 5
码字总数 5738
作品 0
株洲
程序员
私信 提问
大数据开发培训:0基础学习Java编程语言有哪些知识点?

Java 技术通用、高效、具有平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网等,学习Java首先要知道学习知识点有哪些。在这就用加米谷大数据培训...

加米谷大数据
07/25
0
0
2018年java编程语言经典基础知识总结学习

Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互...

Java小辰
05/21
0
0
01 - JavaSE之基础及面向对象

JAVA基础知识 Java 是SUN(Stanford University Network,斯坦福大学网络公司)1995年推出的一门面向 Internet 的高级编程语言。 Java 虚拟机(JVM:Java Virtual Machine) JRE(Java Runtim...

fengdaoting
01/07
0
0
java基础--JDK安装、环境变量配置、工具开发第一个程序、数据类型、运算符

-----Java基础大纲----- **-----本章节-----** 1.Java语言的历史、特点及工作原理 2.JRE和JDK的介绍 3.Java运行环境和开发工具 4.Java基础语法 **-----下一章节-----** 5.条件语句 6.循环 7....

我是宁采臣
06/26
0
0
全面的java编程新手入门学习笔记总结

Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互...

Java小辰
05/10
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Maven 依赖范围(Dependency Scope)

Dependency Scope Dependency scope is used to limit the transitivity of a dependency, and also to affect the classpath used for various build tasks. 依赖范围用于限制依赖项的传递性......

晨猫
9分钟前
0
0
细述hbase协处理器

1.起因(Why HBase Coprocessor) HBase作为列族数据库最经常被人诟病的特性包括:无法轻易建立“二级索引”,难以执行求和、计数、排序等操作。比如,在旧版本的(<0.92)Hbase中,统计数据表的...

微笑向暖wx
22分钟前
1
0
【实践】如何获得Rinkeby网络的测试以太币

当把智能合约部署到Rinkeby Test Network时,需要获得测试以太币。其网络获取测试以太币的方法同Ropsten Test Network有些不同,本文详细讲解一下。 1 访问网站 访问rinkeby网络(https://w...

HiBlock
43分钟前
1
0
Logback中如何自定义灵活的日志过滤规则

当我们需要对日志的打印要做一些范围的控制的时候,通常都是通过为各个Appender设置不同的Filter配置来实现。在Logback中自带了两个过滤器实现:ch.qos.logback.classic.filter.LevelFilter...

程序猿DD
50分钟前
3
0
ES6中let 和 const 的新特性

在javascript中,我们都知道使用var来声明变量。javascript是函数级作用域,函数内可以访问函数外的变量,函数外不能访问函数内的变量。 ECMAScript 6 是 JavaScript 语言教程,全面介绍 EC...

peakedness丶
58分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部