登陆

章鱼彩票app-了解分支句子的运用以及形参和实参的差异

admin 2019-11-08 281人围观 ,发现0个评论

分支语句

1、if分支语句

1.1、if单分支语句

语法: if(逻辑关系表达式){ 代码段1 }

当逻辑关系表达式的值为true时,执行对应{}种的代码段,为false不执行

//if分支语句
public class Demo01 {
public static void main(String[] args) {
/*
* 1.单分支语句 语法: if(逻辑关系表达式){ 代码段1 }
*
* 当逻辑关系表达式的值为true时,执行对应{}种的代码段,为false不执行
*
*
* 注:if后面的{}可以省略,此时此条if语句和挨的最近的那条代码段匹配
*/

if (10 > 9) {
System.out.println("10>9");

1.2、if双分支语句

语法: if(逻辑关系表达式){ 代码段1 }else{ 代码段2 }

/*
* if双分支: if(逻辑关系表达式){ 代码段1 }else{ 代码段2 }
* 如果逻辑关系表达式的值为true,则执行代码段1;如果为false,则执行代码段2;
*/
int i = 10;
if (i % 2 == 0) {
System.out.println(i + "是偶数");
} else {
System.out.println(i + "是奇数");
}

1.3、if多分支语句

语法:if多分支語句: if(逻辑表达式1){ 代码段1 }else if(逻辑表达式2){ 代码段2 }else if{ 代码段3}


/*
* if多分支語句: if(逻辑表达式1){ 代码段1 }else if(逻辑表达式2){ 代码段2 }else if{ 代码段3
* }else{ 代码段4 }
*
* if else if 中每一个分支都是互斥的,只有一个逻辑表达式的值为true,在该条分支执行,其余的都不执行
*/
Scanner sc = new Scanner(System.in);

System.out.println("請輸入學生的分數");
// 调用nextInt()方法,返回一个int值作为分数
int score = sc.nextInt();

if (90 <= score && score <= 100) {
System.out.println("A");
} else if (80 <= score && score < 90) {
System.out.println("B");
} else if (70 <= score && score < 80) {
System.out.println("C");
} else if (60 <= score && score < 70) {
System.out.println("D");
} else {
System.out.println("不及格");
}

1.4、if嵌套语句

语法:if(条件1){
if(条件2){
if(条件3){

}else{

}else{

}
//闰年的判断:闰年的规律:4的倍数,但不是100倍数,或者400的倍数
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要的年份");
int year = sc.nextInt();
if (year % 4 != 0) {
System.out.println("这年不是闰年章鱼彩票app-了解分支句子的运用以及形参和实参的差异");
} else {
if (year % 100 != 0) {
System.out.println("这年是闰年");
} else {
if (year % 400 == 0) {
System.out.println("这年是闰年");
} else {
System.out.println("这年不是闰年");
}
}
}

}
}
}

2、Switch语句

数值表达式的结果值,会和case后面的数值意义匹配,匹配到哪个case语句,则执行相对应的代码段

在jdk1.7以前,数值表达式可以是字符串

注意1:数值表达式中的值的数据类型要和case后面的数据类型一致

注意2:在使用switch语句的时候要注意case渗透问题,即当case语句后面没用跟上break关键字的时候,如果执行了此case语句,那么当此case语句后面的代码执行完了以后,代码它会继续往下执行,执行下一个case语句,直到遇到break为止。

语法:
Switch(数值表达式){
case 值1:
代码段1
break;
case 值2:
代码段2
break;
case 值3:
代码段3
break;
default:
代码段4
}
示例1:
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要的分数");
int score = sc.nextInt();
Switch(score / 10){
case 9:
System.out.println("A");
break;
case 8:
System.out.println("B");
break;
case 7:
System.out.println("C");
break;
case 6:
System.out.println("D");
break;
default:
System.out.println("不及格");
}
示例2:
// 输入月份,判断是哪一个季节
System.out.println("请输入一个月份");
int month = sc.nextInt();
switch (month) {
case 1:
case 2:
case 3:
System.out.println("春天");
break;
case 4:
case 5:
case 6:
System.out.println("夏天");
break;
case 7:
case 8:
case 9:
System.out.println("秋天");
break;
case 10:
case 11:
case 12:
System.out.println("冬天");
break;

3、for循环语句

注意:在使用for循环的时候要先对其值进行初始化

语法:for(1.初始化计数; 2.循环条件判断语句章鱼彩票app-了解分支句子的运用以及形参和实参的差异; 3.再求值参数){
循环体
}
示例:
//打印10个helloWorld
for(int i = 1; i <= 100; i++){
System.out.println("helloWorld");
}
示例2:
//将 123456789数字倒置
int j = 123456789;
int temp = j % 10;
int LastNum = 0; //用来存放取出来的最后一个数字
int num = 0;
for(;j>0;j=j/10){
LastNum = j % 10;
num = num * 10 + LastNum;
}
System.out.println("num:"+num);

4、while循环

当我们知道循环次数的时候使用for循环,当我们不知道循环次数的时候使用while循环

语法:
whi章鱼彩票app-了解分支句子的运用以及形参和实参的差异le(条件判断语句){
循环体
}
即当满足条件判断语句时才执行while循环语句
/*
系统随机产生1~100之间的随机数 用户从控制台输入数字进行猜测,如果猜大了,给与提示猜大了;如果猜小了,给 与提示猜小了 猜对推出游戏
*/
Scanner sc = new Scanner(System.in);

// 使用random随机数工具类来帮助产生随机数
Random ra = new Random();
// ra.nextInt(100)产生0-99之间的随机数
int randomNum = ra.nextInt(100) + 1;
System.o章鱼彩票app-了解分支句子的运用以及形参和实参的差异ut.println("游戏开始,请输入一个数字");
int inputNum = sc.nextInt();

while (inputNum != randomNum) {
if (inputNum > randomNum) {
System.out.println("猜大了,请继续输入");
} else if (inputNum < randomNum) {
System.out.println("猜小了,请继续输入");
}
inputNum = sc.nextInt();
}
System.out.println("猜对了,游戏结束");
}


for (; inputNum != randomNum;) {
if (inputNum > randomNum) {
System.out.println("猜大了,请继续输入");
} else if (inputNum < randomNum) {
System.out.println("猜小了,请继续输入");
}
inputNum = sc.nextInt();
}
System.out.println("猜对了,游戏结束");

//while循环也可以替代for循环

5、Do while 循环语句

无论给出的条件是否满足do while语句的条件,它都会执行一次,

特点:无论是否满足循环条件,循环体至少被执行一次

语法:
do{
循环体
}while(条件判断语句)
示例:
int i = 19;
do{
System.out.println("hello");
}while(i > 20);
}
此时我们给到i的值为19,它不满足while中的条件判断语句(i>20),但是由于do while循环语句的特点,它是先执行循环,因此。它会输出一次hello而后对该条件进行判断,不满足给出的条件语句,则停止循环。输出一次hello

6、循环结束的关键字

1、break:

结束当前整个循环,即使还有剩余的循环次数,也强制结束

int i = 0;
while(i<5){
if(i == 3){
break;
}
System.out.println("i:"+i进攻战进军柏林);
i++;
}
在此处它表示当i = 3 的时候 结束当前整个循环,因此它的输出结果为 0 1 2

2、continue

表示忽略当前这一次循环(即忽略当前这一次循环体中的内容),如果还有循环次数,继续执行。

 for(int i = 0; i < 5; i++){
if(i == 3){
// break;
continue;
}
System.out.println("i:"+i);
}
此处它表示跳过 i = 3 的这次循环,因此它的输出结果为 0 1 2 4

7、Java中的方法

1、什么是方法?

方法:是指对程序中的某个代码段进行封装,方便以后调用。一个方法尽量只执行一个功能。

2、如何定义方法

定义方法的语法:
修饰词(权限修饰词,类型修饰词..) + void/返回数据类型 + 方法名(参数列表){

方法体(具体的方法逻辑);
}

8、return和void

1、什么是return?

return关键字,一般用于方法体的末尾,在表示结束某个方法,在return后面不允许在出现代码

2、什么是void

void它紧跟方法名,表示此方法没有返回值

3、什么是返回数据类型

返回数据类型:返回数据类型它和void一样都是紧跟方法名。表示此方法会有对应类型的数据返回,并且要通过return关键字将该对应类型的数据返回,否则编译报错
示例:
import java.util.Scanner;

public class Demo01 {

//此方法用于找零钱操作
public static double getRish(double price,int num,double money){
double rush = money - price * num;
return rush;
}

//此方法用于实现打印小票的操作
public static void print(double price,int num,double money){
System.out.println("商品名:xxx" + "商品单价:" + price + "商品数量:" + num
+ "商品总价:" + (num * price));
}

//显示找回的零钱
public static void showRish(double rush){
System.out.println("应找零钱:" + rush);
}
public static void main(String[] args) {
//在此处模拟一个收银台操作,从控制台输入用户需要的数量,商品价格,和用户所给的钱
//计算机做出找零操作并显示
Scanner sc = new Scanner(System.in);
System.out.println("请输入商品单价");
double price = sc.nextDouble();
System.out.println("请输入商品数量");
int num = sc.nextInt();
System.out.println("请输入您给收银台的钱");
double money = sc.nextDouble();

//计算找零操作
double rush = getRish(price,num,money);
showRish(rush);
}
}

9、嵌套for循环

嵌套for循环值指的是在一个for循环中在写一个for循环,
用图像思维表示的话:
1层for循环可以看作是一条直线
2层for循环可以看作是一个平面
3层for循环可以看作是一个立体图形;

用表格思维表示的话:
1层for循环可以看作是控制的行
2层for循环可以看作外层for循环控制的是行,内层for循环控制的是列

注意:嵌套for种,外层for循环外层循环一次,内层for循环要执行一遍。
示例:
public class Demo02 {
public static void main(String[] args) {
int i,j;
for (i = 0;i < 5;i++){
System.out.println("i = " + i);
for (j = 0;j < 5;j++){
System.out.println("j =" + j);
}
}
}
}

他的输出结果为 :
第一次循环结果:i=0 j=0,j=1,j=2,j=3,j=4
第二次循环结果:i=1 j=0,j=1,j=2,j=3,j=4
第三次循环结果:i=2 j=0,j=1,j=2,j=3,j=4
第四次循环结果:i=3 j=0,j=1,j=2,j=3,j=4
第五次循环结果:i=4 j=0,j=1,j=2,j=3,j=4
例题:
通过嵌套for循环实现以下效果
*****
****
***
**
*
**
***
****
*****

for (int i = 0;i < 5; i++){
for (int j = 0; j < (5 - i); j++){
System.out.print("*");
}
System.out.println();
}
for (int i = 1;i < 5;i++){
for (int j = 0; j <= i ; j++){
System.out.print("*");
}
System.out.println();
}
例题2:
通过嵌套for循环实现
用循环输出等腰三角形的效果(如下图):最好能动态命令行的数字输出
* 1
*** 3
***** 5
******* 7
********* 9

for(int i = 1;i<5;i++){
for(int j = 0;j<(5-i);j++){
System.out.print(" ");
}
for(int k= 1;k<=(2*i-1);k++){
System.out.print("*");
}
System.out.println();
}
}

10、形参和实参的区别

1、什么是形式参数:

形式参数指的是函数调用时,用来接收实际参数的值,称为形式参数

形参:全称为形式参数,由于它不是实际存在的参数,所以它又称之为虚拟变量,是在定义函数名和函数体的时候使用的参数,目的是用来接收调用该函数时所传进来的参数。调用该函数时,实参将值赋给形参,因此必须要注意实参的个数,类型要于形参一一对应。并且实参要有确定的值。

2、什么是实际参数

实际参数是指在调用是传递给函数的值,它可以是变量,常量,表达式,函数等,无论实际参数是什么变量的值,在进行函数调用的时候,都必须要有一个确定值。以便于把这些值传给形式参数,因此应该先对实际参数预先赋值,使实际参数拥有一个确定的值。

3、形式参数和实际参数的区别

形式参数通常出现在函数中定义,即写在方法名后的括号中。在整个函数中可以使用,离开这个函数则不能使用。

实际参数通常出现在主函数(main方法)中,当实际参数进入到被调函数中,实际参数变量也不能被使用。

实际参数和形式参数无论是在类型上,数量上还是顺序上都要严格一致,否则会出现"类型不匹配的错误"。

形式参数只要在被调用的时候才会分配内存空间,在调用结束后,立即释放内存,因此形式参数值只在函数内部有效,当函数调用结束,返回主函数后,该形式参数变量则不能在被使用

实际参数可以是常量,变量,表达式,函数等,但是无论实际参数是什么样的值,在进行函数调用的时候,实际参数都必须要有一个确定的值。以便于把这些值传给形式参数,因此应先对实际参数进行预先赋值。使实际参数拥有一个确定的值。

例子:
形式参数:
public void method(int a,int b){ 方法体; }
这里的a和b就是形式参数,即形参是一个没有赋值的变量,通常是在函数定义时使用的。

实际参数
当进行函数调用的时候
add(1,2)
这里的1和2就是实际参数,即是一个有赋值的变量。通常是在函数调用时使用。
请关注微信公众号
微信二维码
不容错过
Powered By Z-BlogPHP