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 ...
随机推荐
- GJM : 基于Actor模式的c#网络游戏服务器的实现和Unity游戏客户端的连接 [转载]
感谢您的阅读.喜欢的.有用的就请大哥大嫂们高抬贵手"推荐一下"吧!你的精神支持是博主强大的写作动力以及转载收藏动力.欢迎转载! 版权声明:本文原创发表于 [请点击连接前往] ,未经 ...
- SQLSERVER 2012计算上一条,下一条数据的函数
实际需求很普遍,比如求销售数据的每天与头一天的销售增长量.这里用一个汽车行驶数据来做例子: 先初始化数据: CREATE TABLE [dbo].[CarData]( [CarID] [int] NU ...
- 钉钉客户端JS-API权限签名算法.NET版
前段时间写了一篇博文<钉钉如何进行PC端开发>,在里面并未解决本地生成签名的问题,需要到官网进行生成,由于钉钉门票等认证信息会超期,因此,必须能本地用代码自动更新相关参数信息,来换取签名. ...
- 网站开发中很实用的 HTML5 & jQuery 插件
这篇文章挑选了15款在网站开发中很实用的 HTML5 & jQuery 插件,如果你正在寻找能优化网站,使其更具创造力和视觉冲击,那么本文正是你需要的.这些优秀的 jQuery 插件能为你的网 ...
- CamanJS – 提供各种图片处理的 JavaScript 库
CamanJS 是一个基于 Canvas 处理图片的 Javascript 库,结合简单易用的接口和先进高效的图像编辑技术.CamanJS 很容易扩展新的过滤器和插件,并伴随着一系列广泛的图像编辑功能 ...
- CSS级联和继承
2016-11-06 <CSS入门经典>第七章 1.在HTML中使用CSS样式表的三种方式: (1)内联的样式表. eg:<em style="background-whi ...
- php 过滤英文标点符号 过滤中文标点符号
php 过滤英文标点符号 过滤中文标点符号 代码 function filter_mark($text){ if(trim($text)=='')return ''; $text=preg_repla ...
- Nodejs学习笔记(四)--- 与MySQL交互(felixge/node-mysql)
目录 简介和安装 测试MySQL 认识一下Connection Options MYSQL CURD 插入 更新 查询 删除 Nodejs 调用带out参数的存储过程,并得到out参数返回值 结束数据 ...
- web页面直接跳转至其他页面
<script type="text/javascript">window.location.herf="../../XXXXX.aspx";< ...
- SharePoint 2013必备组件离线包安装:AppFabric无法安装问题解决
由于没有网络,无法使用sharepoint2013的安装必备软件的在线下载向导安装,当要安装 SharePoint 2013 的服务器与 Internet 隔离时,通常需要从脱机位置安装必备组件.即使 ...