第05部分:特殊运算符

Java 有六种语言结构,有时当成运算符,有时只当成基本句法的一部分。【第05部分:表达式和运算符】 也列出了这些“运算符”,以便说明相对于其他真正运算符的优先级。下面进行简要说明。



访问对象成员(.)

对象由一些数据和处理这些数据的方法组成。对象的数据字段和方法称为这个对象的成员。点号运算符(.)用来访问这些成员。如果 o 是一个表达式,而且计算结果为对象引用,f 是这个对象的字段名称,那么,o.f 的计算结果是字段 f 中的值。如果 m 是一个方法的名称,那么,o.m 指向这个方法,而且能使用后面介绍的 () 运算符调用。






访问数组中的元素([])

数组是由编号的值组成的列表。数组中的每个元素都能使用各自的编号(或叫索引)引用。[ ] 运算符能指向数组中的单个元素。如果 a 是一个数组,i 是能计算为 int 类型的表达式,那么,a[i] 指向 a 中的一个元素。这个运算符不像其他处理整数的运算符,它强制要求数组的索引必须是 int 类型或者取值范围更窄的类型。






调用方法(())

方法是一些有名称的 Java 代码,在这个名称的后面加上括号,并在括号中放零个或多个以逗号分隔的表达式,可以运行(或叫调用)方法。括号中的表达式计算得到的值是方法的参数。方法会处理这些参数,有时还会返回一个值,这个值是方法调用表达式的返回值。如果 o.m 是一个没有参数的方法,那么这个方法可以使用 o.m() 调用。假设这个方法有三个参数,那么可以使用表达式 o.m(x,y,z) 调用。Java 解释器调用方法之前,会先计算传入的参数。这些表达式始终从左至右计算(如果参数有副作用,就能体现顺序的重要性)。






lambda表达式( )

lambda 表达式是一些匿名的 Java 可执行代码,其实就是方法的主体,由方法的参数列表(零个或多个以逗号分隔的表达式,放在括号中)、lambda 箭头运算符和一段 Java 代码组成。如果代码段只有一个语句,可以省略标识块边界常用的花括号。






创建对象(new)

在 Java 中,对象和数组使用 new 运算符创建。运算符后面跟着想创建的对象类型,括号中还可以指定一些传给对象构造方法的参数。构造方法是一种特殊的代码块,用于实例化新建的对象。创建对象的句法和调用方法的句法类似。例如:

new ArrayList();

new Point(1,2)





类型转换或校正(())

前面已经介绍过,括号还可以当成执行缩小类型转换(或叫校正)的运算符。这个运算符的第一个操作数是想转换的类型,放在括号里;第二个操作数是要转换的值,跟在括号后面。例如:

(byte) 28     // 把整数字面量校正成byte类型

(int) (x + 3.14f)     // 把浮点数之和校正成整数

(String)h.get(k)     // 把泛型对象校正成字符串

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 位运算符和位移运算符是底层运算符,处理组成整数的单个位。其实在 Java 程序里很少使用位运算符,除非处理底层操作...
    郭艺宾阅读 3,294评论 0 0
  • 前面讲了比较运算符,比较计算结果为布尔值,经常用在分支和循环语句中。为了让分支和循环的条件判断更有趣,可以使用逻辑...
    郭艺宾阅读 3,150评论 0 0
  • 条件运算符 ?: 是有点晦涩的三元运算符(有三个操作数),从 C 语言继承而来,可以在一个表达式中嵌入条件判断。这...
    郭艺宾阅读 1,378评论 0 0
  • 赋值运算符把值存储在某种变量中或赋予某种变量。左侧操作数必须是适当的局部变量、数组元素或对象字段。右侧操作数可以是...
    郭艺宾阅读 3,008评论 0 0
  • 表达式 相对于基本类型、字面量和变量,表达式是Java程序更高一级的结构。Java解释器会求出表达式的值,最简单的...
    郭艺宾阅读 3,610评论 0 0

友情链接更多精彩内容