Java基础语法总结2
三、运算符
Java基 本 的 运 算 符 按功能分有 下 面 几 类 :
1.算 术 运 算 符 (+,-,*,/,%,++,--) Java对 加 运 算 符 进 行 了 扩 展 ,使 它 能 够 进 行 字 符 串 的连 接,如 "abc"+"de",得到 串 "abcde"。与 C、 C++不 同 ,对 取 模 运 算 符 %来 说 ,其 操 作 数 可 以为浮点 数 , 如37.2%10=7.2。i++与 ++i的 区 别:i++在 使 用 i之 后 ,使 i的 值 加 1,因 此 执 行 完 i++后 ,整 个 表达式的 值 为 i,而 i的 值变 为 i+1;++i在 使 用 i之 前 ,使 i的 值 加 1,因 此 执 行 完 ++i后 ,整 个 表达式和 i的 值 均 为 i+1。
2.关 系 运 算 符 (>,<,>=,<=,==,!=)该运算符的特点是:运算完的结果,要么是true,要么是false。Java中 ,任 何 数 据 类 型 的 数 据 (包 括 基 本 类 型 和 组 合 类 型)都可 以 通 过 ==或!=来 比 较 是 否 相 等 (这 与 C、 C++不 同 )。关 系 运 算 符 用 来 比 较 两 个 值 ,返 回 布 尔 类 型 的值true或 false,而不是C、C++中 的 1或 0。
3.布 尔 逻 辑 运 算 符 (& | ^ ! && ||)
逻辑运算符除了 ! 外都是用于连接两个boolean类型表达式。
&: 只有两边都为true结果是true。否则就是false。
|:只要两边都为false结果是false,否则就是true
^:异或:和或有点不一样。
两边结果一样,就为false。
两边结果不一样,就为true.
& 和 &&区别: & :无论左边结果是什么,右边都参与运算。
&&:短路与,如果左边为false,那么右边不参数与运算。
| 和|| 区别:|:两边都运算。
||:短路或,如果左边为true,那么右边不参与运算。
4.位 运 算 符 (>>,<<,>>>,&,|,^,~ ) 用于操作二进制位的运算符,如2*8 = 2<<3;。>>>(无符号右移)
5.赋 值 运 算 符 (= += -= *= /= %=)
6.条 件 运 算 符 ( ?:)
7.其 它 (包 括 分 量 运 算 符 · ,下 标 运 算 符 [],实 例 运 算 符 instanc eof,内 存 分 配运 算 符 new,强 制 类 型 转 换 运 算 符 (类 型 ), 方 法调 用 运 算 符 () 等 )
例子:对两个变量的数据进行互换。不需要第三方变量。
int a = 3,b = 5;-->b = 3,a = 5;
a = a + b; a = 8;
b = a - b; b = 3;
a = a - b; a = 5;
a = a ^ b;//
b = a ^ b;//b = a ^ b ^ b = a
a = a ^ b;//a = a ^ b ^ a = b;
Java 中共有 54 种运算符,按优先级可以分为 14 级:
优先级 操作符 含义 关联性 用法
----------------------------------------------------------------
1 [ ] 数组下标 左 array_name[expr]
. 成员选择 左 object.member
( ) 方法参数 左 method_name(expr_list)
( ) 实例构造 左 class_name(expr_list)
++ 后缀自增 左 lvalue++
-- 后缀自减 左 lvalue--
2 ++ 前缀自增 右 ++rvalue
-- 前缀自减 右 --lvalue
~ 按位取反 右 ~expr
! 逻辑非 右 !expr
+ 一元加 右 +expr
- 一元减 右 -expr
3 ( ) 强制转换 右 (type)expr
new 对象实例化 右 new type()
new type(expr_list)
new type[expr]
4 * 乘 左 expr * expr
/ 除 左 expr / expr
% 求余 左 expr % expr
5 + 加 左 expr + expr
- 减 左 expr - expr
+ 字符串连接 左 strExpr + strExpr
6 >> 有符号右移 左 expr >> distance
>>> 无符号右移 左 expr >>> distance
7 < 小于 左 expr < expr
<= 小于等于 左 expr <= expr
> 大于 左 expr > expr
>= 大于等于 左 expr >= expr
instanceof 类型比较 左 ref instanceof refType
== 等于 左 expr == expr
!= 不等于 左 expr != expr
8 & 整数按位与 左 integralExpr & integralExpr
& 布尔与 左 booleanExpr & booleanExpr
9 ^ 整数按位异或 左 integralExpr ^ integralExpr
^ 布尔异或 左 booleanExpr ^ booleanExpr
10 | 整数按位或 左 integralExpr | integralExpr
| 布尔或 左 booleanExpr | booleanExpr
11 && 逻辑与 左 booleanExpr && booleanExpr
12 || 逻辑或 左 booleanExpr || booleanExpr
13 ? : 条件运算 右 booleanExpr ? expr : expr
14 = 赋值 右 lvalue = expr
*= 乘赋值 右 lvalue *= expr
/= 除赋值 右 lvalue /= expr
%= 模赋值 右 lvalue %= expr
+= 加赋值 右 lvalue += expr
+= 字符串连接赋值 右 lvalue += expr
-= 减赋值 右 lvalue -= expr
<<= 左移赋值 右 lvalue <<= expr
>>= 有符号右移赋值 右 lvalue >>= expr
>>>= 无符号右移赋值 右 lvalue >>>= expr
&= 整数按位与赋值 右 lvalue &= expr
&= 布尔与赋值 右 lvalue &= expr
|= 整数按位或赋值 右 lvalue |= expr
|= 布尔或赋值 右 lvalue |= expr
^= 整数按位异或赋值 右 lvalue ^= expr
^= 布尔异或赋值 右 lvalue ^= expr
运算符不但有优先级,还有关联性。上表中关联性为"左"表示该表达式从左边开始进行运算;关联性为"右"表示该表达式从右边开始进行运算。
四、流程控制语句(If 、 switch、 do while、 while、 for、break、continue)
1. 当判断数据范围,获取判断运算结果boolean类型时,需要使用if;当判断固定个数的值的时候,可以使用if,也可以使用switch。但是建议使用switch,效率相对较高。
switch(变量){
case 值:要执行的语句;break;
…
default:要执行的语句;
}
工作原理:用小括号中的变量的值依次和case后面的值进行对比,和哪个case后面的值相同了就执行哪个case后面的语句,如果没有相同的则执行default后面的语句;
细节:1):break是可以省略的,如果省略了就一直执行到遇到break 为止;
2):switch 后面的小括号中的变量应该是byte,char,short,int四种类型中的一种;
3):default可以写在switch结构中的任意位置;如果将default语句放在了第一行,则不管expression与case中的value是否匹配,程序会从default开始执行直到第一个break出现。
2.当某些语句需要执行很多次时,就用循环结构。
while和for可以进行互换。区别在于:如果需要定义变量控制循环次数。建议使用for。因为for循环完毕,变量在内存中释放。
3.break:作用于switch ,和循环语句,用于跳出,或者称为结束。break语句单独存在时,下面不要定义其他语句,因为执行不到,编译会失败。当循环嵌套时,break只跳出当前所在循环。要跳出嵌套中的外部循环,只要给循环起名字即可,这个名字称之为标号。
4.continue:只作用于循环结构,继续循环用的。作用:结束本次循环,继续下次循环。该语句单独存在时,下面不可以定义语句,执行不到
(转:http://www.cnblogs.com/doit8791/archive/2012/05/27/2520568.html)
Java基础语法总结2的更多相关文章
- java面向对象编程——第二章 java基础语法
第二章 java基础语法 1. java关键字 abstract boolean break byte case catch char class const continue default do ...
- Java基础语法(下篇)
Java基础语法(下篇) 内容概要: (1)函数的定义 (2)函数的特点 (3)函数的应用 (4)函数的重载 ...
- Java基础语法(上篇)
Java基础语法(上篇) 知识概要: (1)关键字的表示与规范 (2)标示符 (3)注释 (4 ...
- java——基础语法
java基础语法 1.关键字:java赋予特殊含义的单词. 2.标识符:程序中开发人员自定义的名词,例如:类名,函数名,变量名(注意事项:①不能以阿拉伯数字开头②不能采用关键字). 3.常量:固定的数 ...
- java基础语法(二)--单列模式
java基础语法(二)--单列模式 /** * 功能:单列模式 * @author Administrator * */ public class SingletonTest { public sta ...
- java基础语法(一)
java基础语法(一) 1.类是一种抽象的概念,对象是类的一种具体表示形式,是具体的概念.先有类,然后由类来生成 对象(Object).对象又叫做实例(Instance). 2.类由两大部分构成:属性 ...
- Java基础语法入门01
Java基础语法入门01 学习java你要先进行去了解JDK,JRE,JVM JDK Java开发工具包 JRE Java语言开发的运行环境 JVM Java虚拟机,用于Java语言的跨平台所用. 当 ...
- Java匹马行天下之JavaSE核心技术——Java基础语法
Java基础语法 一. 认识Java 1. Java 简介 java 是一种高级的面向对象的程序设计语言,使用Java语言编写的程序时跨平台的.从pc到手机,都有Java开发的程序和游戏,Java ...
- JAVA基础语法——标识符、修饰符、关键字(个人整理总结)
JAVA基础语法——标识符.修饰符.关键字 一 . 标识符 1.1 什么是标识符 就是程序员在定义java程序时,自定义的一些名字,例如helloworld 程序里关键字class 后跟的Dem ...
- JavaSE入门学习7:Java基础语法之语句(下)
继续接着Java基础语法来:JavaSE入门学习5:Java基础语法(一)和JavaSE入门学习6:Java基础语法(二). 语句 Java经常使用的3种循环:while.do...while,for ...
随机推荐
- 在selenium2.0中使用selenium1.0的API
Selenium2.0中使用WeDriver API对页面进行操作,它最大的优点是不需要安装一个selenium server就可以运行,但是对页面进行操作不如selenium1.0的Selenium ...
- TestNG官方文档中文版(4)-运行TestNG
4 - 运行TestNG TestNG可以以不同的方式调用: * Command line * ant * Eclipse * IntelliJ's IDEA 1) 命令行 假 ...
- vsftp "上传 553 Could not create file"
我在LINUX下VSftp建立一个FTP服务器,但从WINDOWS使用FTP时,无法上传也无法下载!出错如下 ftp>; ls 200 PORT command successful. Cons ...
- 使用 FocusPoint.js 实现图片的响应式裁剪
通常网站的布局都不是单一的.例如图像在电脑.平板和智能手机上可能显示的形状是不同的.特别是如果你使用的是全屏图像,在你必须使用相同的图像文件的情况下,你的主题可能会被截断或完全缺失,或者看起来很尴尬. ...
- Tabio – 轻松,高效的管理 Chrome 标签页
Tabio 是一个 Chrome 扩展,旨在简化大量浏览器标签页的管理.它提供的搜索功能允许您快速.轻松地找到您需要的选项卡.Tabio 便于组织你的标签,简单的拖拽排序.您也可以使用输入.删除和箭头 ...
- 基于jPlayer的三分屏制作
三分屏,这里的三分屏只是在一个播放器里同时播放三个视频,但是要求只有一个控制面板同时控制它们,要求它们共享一个时间轨道.这次只是简单的模拟了一下功能,并没有深入的研究. 首先,需要下载jPlayer, ...
- HTML基础知识总结
经过这段时间的学习,对于html的一些基础知识有了一定的了解.所谓好记性不如烂笔头,唯有一点点累积,才能汇聚成知识的海洋.现在,我对这段时间的学习做一个总结. 一.HTML的定义 HTML,超文本标记 ...
- Web UI - Javascript之DOM Ready
最近终于稍微适应了工作环境,终于可以让自己缓口气.于是决定要写点东西,算是督促.记录和提升自己的学习.代码的世界,你不轮它,以后就会被它轮.这个系列尽量保持在一周或两周更一篇,目标是在创造内容的时候更 ...
- 使用Autodesk OAuth服务在用户认证的示例
大家知道以Autodesk 360为核心的Autodesk 云服务已经陆续发布,ReCap API.InfraWorks API和PLM 360 REST API已经开始的Pilot项目供第三方开发者 ...
- Sharepoint学习笔记—习题系列--70-576习题解析 -(Q29-Q31)
Question 29 You are designing a SharePoint 2010 intranet site at your company. The accounting depart ...