算术运算符
- +、-、*、/;基本四则运算加减乘除
- %;取余
- —;自减
++;自增
int b=1;
System.out.println(b++);//先使用再自增、自减
System.out.println(b);
int c=1;
System.out.println(++c);//先自增、自减再使用
//只有自增与自减运算符才会改变变量自身的值,普通的四则运算只能改变算式本身的值
System.out.println(--c-c-c--);//-1-(-1)-(-1)=-1+1+1=1
System.out.println(c);//-2
关系运算符
<、>、>=、<=
- ==
-
逻辑运算符
&
- &&
- |
- ||
- !
-
三目运算符
1?2:3
public class TestMaxNum {
public static void main(String[] args) {
System.out.print("请输入要比较的第一个数:");
int a = new Scanner(System.in).nextInt();
System.out.print("请输入要比较的第二个数:");
int b = new Scanner(System.in).nextInt();
//如果1号的结果是true,取2号位置的值,反之,取3号位置的值
int max = a > b ? a : b;
System.out.println("两个数的最大值是:" + max);
}
赋值运算符
+=、-=
- *=、/=
案例
自增自减测试
package cn.tedu.basic;
/**本类用于测试取余运算符*/
public class TestOperator {
//0.创建程序的入口函数main Alt+/补全代码
public static void main(String[] args) {
/**基本的四则运算符+ - * / */
//1.测试除法与取余数
System.out.println(25/10);//int/int->int,商是2
System.out.println(25%10);//取余,余数为5
//练习:获取一个两位数的十位与个位
int x = 59;
System.out.println(59/10);//获取十位,包含几个10
System.out.println(59%10);//获取个位,除十位之外还剩多少
//练习:获取一个三位数的百位 十位 与个位
int y = 152;
System.out.println(y / 100);//获取百位,包含几个100
System.out.println(y / 10 % 10);//获取十位,15个十,取余取5
System.out.println(y % 10);//获取个位,除了15个10以外的余数2
//2.测试自增自减运算符
/**前缀式:++a --a,先改变变量的值,再使用
* 后缀式: a++ a--,先使用,再改变变量的值
* ++:表示给当前变量的值+1
* --:表示给当前变量的值-1*/
System.out.println("我是一个无情的分界线");
int a = 1;
System.out.println(a++);//1,符号在后,先使用,再自增
System.out.println(a);//2,使用过后自增成2
int b = 1;
System.out.println(++b);//2,符号在前,先自增,再使用
int c = 1;
System.out.println(--c);//0,符号在前,先自减,再打印
int d = 1;
System.out.println(d--);//1,符号在后,先打印,再自减
System.out.println(d);//0,刚刚使用过后就自减
/**之前的代码会对后面的代码产生影响*/
System.out.println(c);//c的初始值是0
/**只有自增自减运算符才会改变变量本身的值
* 普通的四则运算只能改变算式本身的值*/
System.out.println(--c-c-c--);//-1-(-1)-(-1)=1
//System.out.println(c);//-2
}
}
求最大值案例
package cn.tedu.basic;
import java.util.Scanner;
/*
* 计算两个数的最大值
*/
public class TestMaxNum {
public static void main(String[] args) {
System.out.print("请输入要比较的第一个数:");
int a = new Scanner(System.in).nextInt();
System.out.print("请输入要比较的第二个数:");
int b = new Scanner(System.in).nextInt();
//如果1号的结果是true,取2号位置的值,反之,取3号位置的值
int max = a > b ? a : b;
System.out.println("两个数的最大值是:" + max);
//通过三元运算符求出三个数的最大值
System.out.print("请输入要比较的第三个数:");
int c = new Scanner(System.in).nextInt();
int max1 = (a > b ? a : b) >c ? (a > b ? a : b) : c;
System.out.println("三个数的最大值是:" + max1);
}
}
求平年闰年
package cn.tedu.basic;
import java.util.Scanner;
/*
* 计算是平年或闰年
*/
public class TestYear {
public static void main(String[] args) {
System.out.print("输入需要判断的年份:");
int year = new Scanner(System.in).nextInt();
/**
* 顺序结构会执行main中的所有代码
* 若需要先判断在选择性的执行语句,需要使用分支结构
* 分支结构中的if语句写法
* if(判断条件){
* 符合条件后执行的代码,不符合条件的将会跳过
* }
*/
String result = "平年";
// if(year % 4==0) {
// if(year % 100 != 0) {
// result = "闰年";
// }
// }
//
// if(year % 400 == 0) {
// result = "闰年";
// }
// System.out.println(year + "年为" + result);
if((year % 4==0 && year % 100!=0) || year % 400==0) {
result = "闰年";
}
System.out.println(year + "年为" + result);
}
}