千锋教育-做有情怀、有良心、有品质的职业教育机构

当前位置:首页  >  关于学院  >  技术干货  >  Java技术干货  >  正文

JAVA里面表达式,关系式,条件表达式,逻辑表达式,四者有什么区别?

来源:千锋教育
发布时间:2023-10-10 20:54:05
分享

一、JAVA里面表达式,关系式,条件表达式,逻辑表达式,四者的区别

区别是格式和优先级不同。

关系表达式(左结合)

优先级次于算述表达式

(1)<、>、<=、>=优先级高

(2)==(等于)、!=(不等于)优先级低

2、成立不成立

成立:命题为真(true)值为1

不成立:命题为假(false)值为0

条件表达式(三目运算符)

1、格式:

表达式1 ? 表达式 2: 表达式3

2、含义:

整个表达式的值由表达式1决定;

若表达式1成立,则整个条件表达式的值为表达式2的值;

若表达式1不成立,则整个条件表达式的值为表达式3的值。

例:

求三数表达式:

d=x>y?x:y;

e=d>z?d:z

或

d=x>y?(x>z?x:z):(y>z?y:z)

3、表达式1的成立与不成立

非0(值为1)——>成立

0——>不成立

4、优先级:只高于赋值法

结合性:

右结合

逻辑表达式

1、逻辑表达符

!(单目)取反  非运算  优先级高于算述运算符

&&(双目)并且  或运算  优先级低于运算符

||(双目)或者  与运算  运算符低于&&

&&:

两个表达式都成立时成立  否则不成立

||:

两个表达式其中任何一个成立就成立,只有两个都不成立时不成立

3、短路问题:

||:

左边成立情况下编译器不计算右边

&&:

左边不成立情况下编译器不计算右边

延伸阅读:

二、JAVA中条件表达式与c语言的不同

与C语言不同的是,JAVA中条件表达式的值必须参与运算。例子如下:

publicclassdemo{

publicstaticvoidmain(String[]args){

inta=10,b=20,y;

a>b?(y=a):(y=b;)//1,这样写是错误的

y=a>b?a:b;//2,这样写是正确的

y=a

}

}

数据类型

表达式1,表达式2,表达式3的类型可以不同.此时条件表达式的值的类型为它们中较高的类型

如果表达式1和表达式2具有相同的类型T,条件表达式的类型为T。

如果表达式1和表达式2中一个有类型T(byte、short或char),而另一个是int类型的常量表达式,其值又可以用类型T表示,则T为条件表达式的类型。

混合类型的计算,e2和e3被提升之后的类型为条件表达式的类型。

public static void 条件表达式的type(){

char x = ‘X’;

int i = 0;

System.out.println(true ? x : 0); //类型为char

System.out.println(true ? x : -1); //类型为int

System.out.println(false ? i : x); //类型为int

}

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

相关推荐

  • javaoa系统有哪些模块? 一、权限管理模块权限管理模块是Java OA系统的核心模块之一,也是整个系统的基础。该模块通过对系统用户进行身份验证、权限分配、访问控制等管理,确保了系统的安全性和稳定性。权限管理模块通常包括用户管理
  • Java中遍历数据结构Enumeration和Iterator相比有什么不同? 一、Java中遍历数据结构Enumeration和Iterator的不同1、功能和用法不同 Enumeration是Java早期版本中引入的接口,它只有两个方法:hasMoreElements()和n
  • 为什么JavaScript绝大多数内置函数都是native code? 一、JavaScript绝大多数内置函数都是native code的原因1、提高程序执行效率首先,内置函数作为引擎内部的一部分,可以提高JavaScript程序的执行效率。这是因为,内置函数的实现是直
  • C、C++、Java、JavaScript、PHP、Python、Ruby 这些语言分别主要用来开发什么? 一、C、C++、Java、JavaScript、PHP、Python、Ruby 的用途C主要用于底层模块,服务应用和嵌入式应用;C++主要用于上层服务程序,应用API,大型3D游戏;Java主要用于服
  • C++、java都将线程共享的变量等放到堆内存中,为什么选择堆这种数据结构? 一、C++、java为什么选择堆这种数据结构效率:执行堆排序所需的时间呈对数增长,而其他算法可能随着要排序的元素数量的增加而呈指数级增长。这种排序算法非常有效。内存使用: 内存使用是最小的,因为除了保
  • Java 的作用是什么? 一、Java 的作用1、跨平台Java的跨平台特性是其最大的优势之一,因为Java代码可以在各种不同操作系统和硬件平台上运行,这是因为Java程序通过Java虚拟机(JVM)来执行,JVM将Java代