04-控制语句
- 方法: 方法就是定义在类中的具有特定功能的,可以被重复调用的一段独立小程序
- 定义方法的两个明确:
- 明确方法运行之后是否有结果,如果有,写结果类型,如果没有,写void
- 方法在运行的时候,是否不确定因素,不确定因素作为方法的形式参数
- 方法的调用:
- 方法在调用处负责提供方法的实际参数
- 负责对方法的运算结果进行处理
- 注意事项:
- 方法和方法之间是平级的,不能嵌套
- 方法的运算结果叫做返回值,返回值的记过只有一个
- 方法的实际参数与方法的形式参数的类型,个数,顺序完全一致
public class MethodDemo{
//主方法 程序的入口
public static void main(String []args){
//int s = MethodDemo.add(22,45); //方法的调用处 静态调用
System.out.println(MethodDemo.add(22,45));
//调用
redu(12,123);
}
//两个整数相加的方法
public static int add(int a , int b){ //形式参数
int result = a+b;
return result; //结束方法 ,并把结果给方法的调用处
}
//自定义方法 没有返回值得方法 只做输出
public static void redu(int a,int b){
System.out.println(a-b);
}
public static double add2(double a , double b){ //形式参数
double result = a+b;
return result; //结束方法 ,并把结果给方法的调用处
}
}
-
分支(选择)结构: 如果
当我们程序需要选择型,(需要判断) 执行的时候使用分支
public class IfDemo{
public static void main(String [] args){
//声明一个变量存储分数
int score = 90;
if(score<=60){ //布尔表达式
System.out.println("you die");
}else if(score>60&&score<=80){
System.out.println("给你一个拥抱");
}else if(score>80&&score<=100){
System.out.println("奖励一根棒棒糖。");
}else{
System.out.println("分数统计有误");
}
}
}
- 嵌套if :
import java.util.Scanner;
public class IfElseDemo{
public static void main(String [] args){
//分数
Scanner input = new Scanner(System.in);
//屏幕提示
System.out.println("请输入你的比赛成绩");
//int类型来接受键盘的输入
int score = input.nextInt();
//判断比赛的成绩是否大于等于6
if(score>=6){
//当成绩满足时可以进入决赛,判断性别
System.out.println("请输入你的性别:");
//char类型来接受键盘的输入
char gender = input.next().charAt(0);
//判断性别
if(gender == '男'){ // ==: 基本数据类型判断两边的值
System.out.println("进入男子组");
}else if(gender == '女'){
System.out.println("进入女子组");
}else{
System.out.println("性别识别错误");
}
}else{
System.out.println("很遗憾,您已被淘汰....");
}
}
}
- for : 循环
public class ForDemo{
public static void main(String [] args){
//for循环的放手比while循环更简洁.
for(int i = 1;i<=10;i++){ //初始化.条件判断,迭代
System.out.println("好好学习,天天向上" +i);
}
}
}
- for的嵌套
- 外循环走一遍,内循环走一轮
- 外循环控制行数
- 内循环控制列数
public class ForDemo02{
public static void main(String [] args){
int rows = 5;
for(int i = 1;i<=rows;i++){ //行数
for(int j = 1; j <= i ; j++){ //列数
System.out.print("*");
}
System.out.println(); //换行
}
}
}
-
do…while
- 先执行,再判断,至少输出一次
书写流程:
1.初始化
2.循环体
3.迭代
4.条件判断
public class DoWhileDemo{
public static void main(String [] args){
//[1]初始化
int i = 1;
do{
//[2]循环体
System.out.println("嘿吼嘿");
//[3]迭代
i++;
}while(i<=10); //[4]条件判断
}
}
-
break : 终止整个循环 程序跳转到循环块外的下一条语句
-
continue : 跳过本次循环中剩下的语句执行下一个语句
使用场合:
- break: 可用在switch结构中和循环结构中
- continue: 只能使用在循环结构中
public class BreakDemo{
public static void main(String [] args){
//break: 跑十圈 跑五圈的时候老师不用跑了
for(int i = 1;i<=10;i++){
if(i==5){
System.out.println("现在是第"+i+"圈.不用跑了");
//break;
}
System.out.println("现在是第"+i+"圈了");
}
System.out.println("----------------------------------------------");
//continue:跳过本次循环中剩下的语句执行下一个语句 跑十圈 跑五圈的时候 喝口水 接着跑
for(int i = 1;i<=10;i++){
if(i==5){
System.out.println("现在是第"+i+"圈.喝口水");
continue;
}
System.out.println("现在是第"+i+"圈了");
}
}
}
- switch: 等值判断
import java.util.Scanner;
public class SwitchDemo{
public static void main(String [] args){
//创建一个Scanner
Scanner input = new Scanner(System.in);
//屏幕提示
System.out.println("今天健身第几天哇~");
//int类型来接受键盘的输入
int day = input.nextInt();
//使用判断语句进行判断
switch(day){
case 1 :
System.out.println("黄瓜");
break; //停止贯穿 跳出本次判断结构
case 2 :
System.out.println("水果沙拉");
break;
case 3 :
System.out.println("蒙牛咖啡");
break;
case 7:
//判断
System.out.println("你有没有乖乖锻炼啊? (1.没有/2.有)");
int result = input.nextInt();
if(result ==1 ){
System.out.println("喝凉水吧");
}else{
System.out.println("鸡公煲");
}
}
}
}
-
while: 当相同的行为不停的重复或重复很多遍用到循环
循环结构由四个部分组成:
- 初始化
- 条件判断
- 循环体
- 迭代(更新)
特点:
先判断,在执行
public class WhileDemo{
public static void main(String [] args){
int i = 1; //[1]从1 开始记录
//[2]条件判断
while(i<=100){ //次数为100
//[3]循环体 要循环代码
System.out.println("好好学习,天天向上" +i);
//[4]迭代
i++; //更新记录循环多少次,不满足条件的时候停止循环
}
}
}