Java运算符
表达式
表达式:由运算符和操作数组成
例:sum = n1 + n2
赋值运算符
- 格式:变量 = 表达式;
- 例:int n=3; //将3赋值给变量n
- 注意:赋值运算符是从右至左运算!
复合赋值运算符
算数运算符
编程练习
public class MathDemo {
public static void main(String[] args) {
int num1=10,num2=5;
int result;//存放结果
//加法
result=num1+num2;
System.out.println(num1+"+"+num2+"="+result);
//字符串链接
System.out.println(""+num1+num2);
//减法
result=num1-num2;
System.out.println(num1+"-"+num2+"="+result);
//乘法
result=num1*num2;
System.out.println(num1+"*"+num2+"="+result);
//除法
result=num1/num2;
System.out.println(num1+"/"+num2+"="+result);
//分子分母都是整形时,结果为整除后的结果
System.out.println(13/5);
System.out.println("13.0/5="+13.0/5);
//求余数
result=13%num2;
System.out.println("13%"+num2+"="+result);
System.out.println("13.5%5="+(13.5%5));
}
}
自增自减运算符
- 编码练习
public class MathDemo {
public static void main(String[] args) {
// x++
int x=4;
int y=(x++)+5;
System.out.println("x="+x+",y="+y);
// ++x
y=(++x)+5;
System.out.println("x="+x+",y="+y);
// x--
y=(x--)+5;
System.out.println("x="+x+",y="+y);
//--x
y=(--x)+5;
System.out.println("x="+x+",y="+y);
}
}
关系运算符
关系运算符主要用于条件和循环语句中的判断条件
- 例:
- ‘A’ > ‘B’ 结果为false ,比较的是两个字符的ASCII值
- 5 != 6 结果为ture ,比较两个数值是否相等
- ture == false 结果为false ,两个布尔值不相等
- float f=5.0f; long l=5; f == l;
- 结果为ture ,浮点数与整数进行比较,只要值相等就返回ture
条件结构
- if 简单语句
public class conditionDemo {
public static void main(String[] args) {
// 商场打折,如果两件商品的价格大于100则减20,并把原价和折后价分别输出
//定义两个变量,分别存放两件衣服的价格
double price1,price2;
price1=80;
price2=55;
//计算两商品的总价格
double sum=price1+price2;
System.out.println("原价为:"+sum);
if(sum>=100) {
sum=sum-20;//sum-=20;
}
System.out.println("折后价格为:"+sum);
}
}
- if - else 语句
[ 此处用到了一个输入语句 ]
package com.HS;
import java.util.Scanner;
public class ConditionDemo1 {
public static void main(String[] args) {
// 例:判断一个整数是奇数还是偶数
//定义一个变量存放数据
//int n=11;
//从键盘接收数据
System.out.println("请输入一个整数:");
Scanner s=new Scanner(System.in);
int n=s.nextInt();
if(n%2==0) {
System.out.println(n+"是偶数!");
}
else {
System.out.println(n+"是奇数!");
}
}
}
逻辑运算符
逻辑 “与” 运算符
逻辑 “或” 运算符
逻辑 “非” 运算符
- 例:输入一个数,判断是否能被3整除,并输出相应的提示信息
package com.HS;
import java.util.Scanner;
public class LogicDemo {
public static void main(String[] args) {
// 输入一个整数
System.out.println("请输入一个整数:");
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
if(!(n%3==0)) {
System.out.println(n+"不能被3整除!");
}else {
System.out.println(n+"能被3整除!");
}
}
}
条件运算符
- 求两个数的最大值并输出
public class ConditionDeom {
public static void main(String[] args) {
int a=10,b=7;
//求a和b的最大值
int max; //最大值
if(a>b) {
max=a;
}else {
max=b;
}
System.out.println("a和b的最大值为:"+max);
max=a>b?a:b;
System.out.println("a和b的最大值为:"+max);
boolean b1=a>b?(3<6):(true==false);
System.out.println("b1="+b1);
}
}
运算符的优先级
综合案例
- 用 if - esle 语句判断输入的年份是否为闰年
- 闰年的判断规则:能被4整除但不能被100整除的年份,或者能被400整除的年份
package com.HS;
import java.util.Scanner;
public class LeapYearDemo {
public static void main(String[] args) {
System.out.println("请输入年份:");
Scanner sc=new Scanner(System.in);
int year=sc.nextInt();
//闰年的判断规则:能被4整除但不能被100整除的年份,或者能被400整除的年份
if(((year%4==0)&(year%100!=0))|(year%400==0)){
System.out.println(year+"是闰年!");
}else {
System.out.println(year+"不是闰年!");
}
}
}
总结
- 算数运算符
- 赋值运算符
- 关系运算符
- 逻辑运算符
- 条件运算符
- 位运算符