一.三目运算符:(条件运算符)
* 格式:表达式1?表达式2:表达式3
* 表达式1是一个boolean类型的值
* 表达式2和表达式3的结果必须是相同的数据类型
* 当表达式1的值为true 的时候取表达式2的值否则为表达式3的值
*
* 注意:表达式2和表达式3也是一个三目运算,而且表达式2和表达式3不会同时
* 都执行
这一点东西是前一天遗留的.
二.分支结构:
* 1.if 单一选择
* 2.if-else 二选一
* 3.if-else if-else 多选一
* 4.switch-case 多选一分支结构:
1.if:
* 结构if(条件判断){
* 执行的代码块;
* }
* 当条件判断为true的时候才执行大括号里面的代码块
* 重点:if结构可以不需要大括号,但是只能控制离他最近的一条语句
2.if-else
* 格式:if(){
* 执行的代码块;
* }else{
* 否则执行的代码块;
* }
* 当条件判断为true时,执行if大括号中的代码块,否则执行else中的代码块;
* 注意:if和else可以不打大括号,但是只能分别控制一句话;
3.if-else if-else
if(条件判断){
* 执行的代码块1
* }else if{
* 执行的代码块2
* }else{
* 执行的代码块3
* }
4.switch-case
* 结构:
* switch(变量){跟打10086一样
* case 值1:
* 执行的代码块1;
* break;
* case 值2:
* 执行的代码块2;
* break;//可以跳出循环结构和switch...case
* ...
* default:
* 默认执行的代码块;
* }
注意:
* -switch-case中的每一个Case后面必须要加break,
* 否则会一直选择下去
* -default语句块的位置可以不在最后面,但是一旦没有在最后面,
* 语句块后面就需要添加break
*重点:switch-case中允许的变量类型:
*byte,short,int,char,jdk1.5以后支持String类型(枚举类型)
这里阳老师说switch...case语句就跟选小姐一样,这个行就带走,不行就下一个,笑死我了,附上代码
System.out.println("请输入一个1~3的数字:");
int num = sc.nextInt();
switch(num){
case 1:
System.out.println("1号女技师");
break;
case 2:
System.out.println("2号女技师");
break;
case 3:
System.out.println("3号女技师");
break;
default:
System.out.println("男技师");
}
分支结构概念还是很简单的,但是在具体的实例中,要灵活运用也不是很简单的事情!
接下来就开始讲循环了
5.循环结构:
* -while
* 结构:while(条件判断){
* 重复执行的代码块;
* }
* 如果条件判断为true,则会执行大括号里面的内容
* 如果条件一直为true,则会重复执行代码块
* -do-while
* 结构:do{
* 重复执行的代码块;
* }while(条件判断);
* 先会执行一次代码块,再判断条件是否为true,如果为true,则继续循环
面试:while和do-while的区别?
* -while循环是先判断条件,在决定是否执行循环
* -do-while是先执行一次循环,再判断条件,是否继续执行循环
这一块内容概念比较简单,主要以练习题目为主,所以我多附上几个习题:
课后题1:
package NewDay2;
/**
* 输入一批整数,输出其中的最大值和最小值,输入数字0时结束循环
*/
import java.util.Scanner;
public class homeWork1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入一个整数(输入0结束):");
int num = sc.nextInt();
int max =num;
int min =num;
while(num!=0){
if(num>max){
max = num;
}else if(num<min){
min = num;
}
System.out.print("请输入一个整数(输入0结束):");
num = sc.nextInt();
}
System.out.print("最大值是:"+max+" ");
System.out.println("最小值是:"+min);
}
}
课后题2:
package NewDay2;
import java.util.Scanner;
public class homeWork2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num =1;
while(num!=0){
System.out.print("请输入数字1~7(输入0结束):");
num = sc.nextInt();
switch(num){
case 0:break;
case 1:System.out.println("今天是MON");break;
case 2:System.out.println("今天是TRU");break;
case 3:System.out.println("今天是WEN");break;
case 4:System.out.println("今天是THI");break;
case 5:System.out.println("今天是FRI");break;
case 6:System.out.println("今天是SAT");break;
case 7:System.out.println("今天是SUN");break;
default:System.out.println("请重新输入!");
}
}
System.out.println("程序结束!");
}
}
课后题3:
package NewDay2;
import java.util.Scanner;
public class homeWork3 {
public static void main(String[] args) {
double price = 5000.0;
Scanner sc = new Scanner(System.in);
System.out.println("请输入您出行月份(1~12):");
int mon = sc.nextInt();
System.out.println("请问您选择头等舱还是经济舱?头等舱输入1,经济舱输入2");
int cho = sc.nextInt();
switch(mon){
case 11:
case 12:
case 1:
case 2:
case 3:
switch(cho){
case 1:System.out.println("您的机票价格为:"+price*0.5);break;
case 2:System.out.println("您的机票价格为:"+price*0.4);break;
default:System.out.println("请重新输入!");
}break;
case 4:
case 5:
case 6:
case 7:
case 8:
case 9:
case 10:
switch(cho){
case 1:System.out.println("您的机票价格为:"+price*0.9);break;
case 2:System.out.println("您的机票价格为:"+price*0.6);break;
default:System.out.println("请重新输入!");
}break;
default:System.out.println("请重新输入!");
}
}
}
哈哈哈哈,轻轻松松.
以下是6月29日的内容,就只讲了一个for循环,
*for循环:
* 格式:
* for(表达式1;表达式2;表达式3){
* 重复执行的代码块;
* }
* 表达式 1:用来定义变量;
* 表达式2:用来写循环的条件
* 表达式3:用来写表达式1定义的变量的递增或者递减
*
*什么情况下使用for循环?
*在明确知道循环次数的情况下
小知识:
\t:相当于是一个大空格键(tab)
\n:相当于是回车键(换行)
三个在循环中常用的关键字:
break:跳出switch-case结构和当前的循环结构
continue:结束当次循环,直接进入到下一次循环
return:结束当前的方法,回到调用该方法的地方(结束程序)
课后作业布置了四个题,但是,有参考价值的我认为只有第一题和第四题
课后题一
package NewDay3;
import java.util.Scanner;
public class homeWork1 {
public static void main(String[] args) {
do{
Scanner sc = new Scanner(System.in);
System.out.println("输入学生姓名:");
String name = sc.next();
int sum = 0;
for(int i=1;i<=5;i++){
System.out.println("请输入5门功课中第"+i+"门功课的成绩:");
int score = sc.nextInt();
sum +=score;
}
System.out.println(name+"的平均分是:"+(sum/5));
System.out.println();
System.out.println("继续输入吗?(y/n)");
String change = sc.next();
if(change.equals("y")){
continue;
}else{
System.out.println("成绩录入结束");
return;
}
}while(true);
}
}
课后题四
package NewDay3;
/**
*
*打印如下图形
* *****
* *****
* *****
*/
public class homeWork4 {
public static void main(String[] args) {
for(int i=1;i<=3;i++){
for(int t=0;t<i-1;t++){
System.out.print(" ");
}
for(int j=1;j<=5;j++){
System.out.print("*");
}
System.out.println();
}
}
}