1.运算符
在java语言中,运算符可分为5种类型:
算术运算符、赋值运算符、关系运算符、逻辑运算符、位运算符。
根据操作数的不同,运算符又分为单目运算符、双目运算符和三目运算符。
单目运算符只有一个操作数,双目运算符有两个操作数,三目运算符则有三个操作数。
1.练习:自增自减
package cn.tedu.basic;
/**本类用于测试取余运算符*/
public class TestOperator {
//1.入口
public static void main(String[] args) {
//1.测试除法与余数
System.out.println(25 / 10);
System.out.println(25 % 10);
//2.练习1:获取一个两位数59的十位与个位
int x = 59;
System.out.println(x / 10);//打印十位
System.out.println(x % 10);//打印个位
System.out.println("***********");
//3.练习2:获取一个三位数159的百位十位个位
int y = 159;
System.out.println(y / 100);//打印百位
System.out.println(y / 10 % 10);//打印十位
System.out.println(y % 10);//打印个位
//4.测试自增自减运算符
/**
* 前缀式:符号在前:++a --a ,先改变变量本身的,再使用,比如打印
* 后缀式:符号在后:a++ a-- ,先使用再改变变量本身的值
* ++:相当于给变量本身的值+1
* --:相当于给变量本身的值-1
*/
System.out.println("*******");
/**
* 普通的四则运算并不会改变变量本身的值
* 自增自减运算符才会改变变量本身的值
*/
int z = 1;
System.out.println(z+4);//5
System.out.println(z);//1
int a = 1;
System.out.println(++a);
System.out.println(a);
int b = 1;
System.out.println(b++);
System.out.println(b);
int c = 1;
System.out.println(--c);
System.out.println(c);
int d = 1;
System.out.println(d--);
System.out.println(d);
//此时c为0
// System.out.println(--c-c-c--);// 1 , -1-(-1)-(-1)=1
// System.out.println(c);
// System.out.println(--c); // -1
// System.out.println(--c-c);// 0
// System.out.println(--c-c-c);// 1
System.out.println(--c-c-c--);// 1
System.out.println(c);
}
}
2.分支结构
1.练习:打折案例
-
package cn.tedu.basic2; import java.util.Scanner; /**本类用于练习嵌套分支结构*/ //需求:商品打折案例 //接收用户输入的价钱,并将打折后价钱输出 //10000-5折 5000-8折 3000-9折 public class TestIf2 { public static void main(String[] args) { //1.提示用户输入原价 System.out.println("请输入商品原价钱:"); double price = new Scanner(System.in).nextDouble(); //2.定义一个变量,用来保存打折后的价格 double count = price; //3.判断原价可以打几折 if(price >= 10000) { count = price * 0.5; }else if(price >= 5000) { count = price * 0.8; }else if(price >= 3000) { count = price * 0.9; } System.out.println("商品原价为:"+price+",打折之后价钱为:"+count); } }
2.练习:嵌套分支练习分数
package cn.tedu.basic2;
import java.util.Scanner;
/**本类用于练习嵌套分支案例2*/
//需求:学员成绩段位案例
//90分及以上 A
//80-89 B
//70-79 C
//60-69 D
//60分以下 E
public class TestIf3 {
public static void main(String[] args) {
System.out.println("请输入你的分数:");
int score = new Scanner(System.in).nextInt();
if(score >= 0 && score <= 100) {
if(score >= 90) {
System.out.println("你获得的成绩为A");
}else if(score >= 80) {
System.out.println("你获得的成绩为B");
}
else if(score >= 70) {
System.out.println("你获得的成绩为C");
}
else if(score >= 60) {
System.out.println("你获得的成绩为D");
}else{
System.out.println("你的考试成绩不及格");
}
}else {
System.out.println("你输出的成绩是无效的");
}
}
}
3.练习判断闰年的案例
package cn.tedu.basic2;
import java.util.Scanner;
/**本类用于实现求平年闰年案例*/
//需求:接收用户输入的年份,判断是平年还是闰年,并将判断结果输出
//闰年的判断方法:
//1.能被400整除--世纪闰年
//2.能被4整除,不能被100整除--普通闰年
public class TestYear {
public static void main(String[] args) {
//1.提示并接收输入的年份:
System.out.println("请输入年份:");
int year = new Scanner(System.in).nextInt();
String result = "平年";
if(year % 400 == 0 || (year % 4 == 0 && year % 100 != 0) ) {
result = "闰年";
}
//3.打印判断的结果
System.out.println(year+"年是:"+result);
}
}
3.switch结构
1.switch练习一
package cn.tedu.basic2;
/**本类用来练习switch结构
* 总结:
* 1.变量a支持的类型:byte short char int String
* 2.执行顺序:会拿着变量a的值依次与每个case后的值作比较
* 如果匹配。就执行case后的语句
* 如果没有遇到break,就会一直向后执行所有case,包括default,称作穿透现象
* 3.如果设置了default“保底选项”,并且没有匹配到任何case,执行default
* 4.break与default都是可选项,可加可不加,根据具体业务来决定
* */
public class TestSwitch1 {
public static void main(String[] args) {
//1.定义变量
int a = 4;
//2.完成switch结构
switch(a) {
//Ctrl+Alt+向下健 快速向下复制
case 1 :System.out.println(1);break;
case 2 :System.out.println(2);break;
case 3 :System.out.println(3);
case 4 :System.out.println(4);
case 5 :System.out.println(5);
default:System.out.println(0);
}
}
}
2.switch String类型练习
package cn.tedu.basic2;
/**本类用于测试switch结构2*/
public class TestSwitch2 {
public static void main(String[] args) {
String day = "星期五";
switch(day) {
case "星期一":System.out.println("Monday");break;
case "星期二":System.out.println("Tuesday");break;
case "星期三":System.out.println("Wednesday");break;
case "星期四":System.out.println("Thursday");break;
case "星期五":System.out.println("Friday");break;
case "星期六":System.out.println("Saturday");break;
case "星期日":System.out.println("Sunday");break;
default : System.out.println("Weekend");
}
}
}