java三目运算符判断boonlean,java运算符和表达式

本文介绍了Java中运算符与表达式的全面内容,包括算术运算符(如+、-、*等)、关系运算符(比较和逻辑),逻辑运算符(&&、||、!),位运算符以及特殊运算符如三目运算符和赋值运算符。重点讲解了不同类型数据的运算规则,并通过实例展示了运算符在实际编程中的运用和特性,如字符串连接、数据类型转换和条件运算的短路行为。
摘要由CSDN通过智能技术生成

Java第三课

今天学的是运算符和表达式;

运算符:用于标明对数据执行某种运算的特定符号;

算数运算符:+、—、*、/、%、++、——;

关系运算符:、>=、<=、==、!=;

逻辑运算符:! &&(&)  ||(|)  ^;

位运算符:~、&、|、^、<>、>>>;

赋值运算符:简单赋值(=)、复合算术赋值(+=、-=、*=、/=、%=)、复合位运算赋值(&=、|=、^=、>>=、<<=、>>>=;)

条件运算符:? : 。

首先讲的是算术运算符:有单目运算符和双目运算符、三目运算符;

单目运算符有+、-、/、*、%(取余);

双目运算符:正、负、++自增、--自减;

三目运算符:?:

Java语言的+可以连接两个字符串;

public class Test

{

public static void main(String[] args)

{

int i = 9;

int j;

j = ++ i;      //等价于i=i+1;j=i;

System.out.println("i="+i+"\tj="+j);

j = i ++;       //等价于i=j;i=i+1;

System.out.println("i="+i+"\tj="+j);

}

}

可以对char类型的数据可以进行算数计算,而boolean类型数据不可以进行算术计算,因为char类型的数据可以自动转换成整型和float浮点型;'a'

2、关系运算符:用于判断两个操作数的等价性和大小关系得到的类型为布尔类型;为true和false;

class Test2

{

public static void main(String[] args)

{

int a=4;

int b=6;

if(a==b) {

System.out.println("a 等于b");

}

if(a != b)

{

System.out.println("a 不等于b");

}

}

}

逻辑运算符:对boolean类型数据进行逻辑上的“与”、“或”、“非”、“异或”等运算,结果仍为boolean类型;、

利用&、|作运算时,运算符左右两边的表达式都会被执行,最后两表达式的结果再进行与、或运算;

而利用&&、||作逻辑运算时,如果只计算运算符左边的表达式即可确定与、或的结果,则右边的表达式将不会执行。

class TestBooleanOperator

{

public static void main(String[] args)

{

boolean b1,b2;

b2 = false;

b1 = !b2;

System.out.println("逻辑值:b1="+b1+",b2="+b2);

System.out.println("逻辑与:b1&b2="+(b1 & b2));

System.out.println("逻辑或:b1|b2="+(b1 | b2));

System.out.println("逻辑异或:b1^b2="+(b1 ^ b2));

int x=3,y=9;

b1 = x > y && x++ ==y--;

System.out.println("短路与的结果:" + b1 + ",x=" + x + ",y=" +y);

x=3;

y=9;

b2 = x > y & x++ == y--;

System.out.println("逻辑与的结果:"+ b2 + ",x=" + x + ",y=" + y);

}

}

位运算:对整形或者字符型数据的二进制进行运算,运行结果为一个整数;`

有“&”运算:参与运算的两个值,如果两个相应位都为1,则该位的结果为1;否则为0;

“|”运算:参与运算的两个值,如果两个相应位有一个为1,则该位的结果为1;否则为0;

"^"运算:参与运算的两个值,如果两个相应位都相同,则该位的结果为0;否则为1;

还有左移位,右移位,无符号右移;这些举些例子才能明白;

左移位:int 3<<2  //3的二进制数向左平移两位,右边补0;

00000000 00000000 00000000 00000011

向左移两位右边补零;

00000000 00000000 00000000 00001100

左移位:int 2227>>3 //

00000000 00000000 00001000 10110011

//向右移两位,原来右侧的奖杯弃掉;

00000000 00000000 00000001 00010110

无符号右移位在负数上才能体现不同;无论正负空出来的位补零;

赋值运算符:变量=表达式;

功能:是将运算符“=”右侧表达式的计算赋值给左侧的变量;这个就不用仔细讲了

条件运算符:

?:;

表达式1必须是boonlean类型的,系统将首先计算表达式1的值,如果该值为ture,则将表达式2的值作为整个表达式的最终结果,否则将表达式3的值作为整个表达式的最终结果;

获取输入对话框的值,这个我也不是很清楚,但基本结构还是知道的,

首先在类的上面加上一个头文件,import  javax.swing.JOptionPane(*);

然后可以将数字的字符串形式转换为整数。Integer.parseInt(s)方法将数字的字符串表示形式s转换为其等效的有符号整数;

例如:int score;

score = Integer.parseInt(JOptionPane.showInputDialog(“请输入百分制成绩:”));

String result=(score>=60)?"及格":“不及格”;

表达式:由若干个操作数和运算符按照约定规则构成的一个序列。

数据类型转换:

如果(byte或short)和int-—>int;

(byte或short或int)和long---->long

(byte或short或int或long)和float--->float;

(byte或short或int或long或float)和double--->double;

char和int---->int;

强制类型转换:(目标数据类型)变量或表达式

例:(float)5/9*(f-32)   //该表达式将int型常量5强制转换成5.0fl,在和9整除;

强制类型转换时,由于目标数据类型的取值范围小于待转换数据类型的取值范围,在转换过程中会出现截断,导致高位数据丢失或精度下降。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值