Java基础04 双重循环 方法

这篇博客介绍了Java编程中的一些基本语句,包括键盘录入、数转百分数、字符串转整数、数字位数获取、随机数生成等。同时,详细讲解了while和do-while循环的使用,并给出了循环控制的注意事项,如break和continue的运用。此外,还展示了如何通过嵌套for循环实现九九乘法表。最后,讨论了方法的定义、调用及其注意事项,强调了方法的递归调用和参数、返回值的处理。
摘要由CSDN通过智能技术生成

一、一些常用的功能Java语句

1.键盘录入

Scanner sc = new Scanner(System.in);
System.out.println("请输入数据:");//提示
int num = sc.nextInt();//一定要定义一个变量来接受录入数据

注意: 提示必须在接收变量之前且紧接声明接收变量
2.数转百分数

//第一种 
double num = 0.16; //如果是整数类型必须先转为double类型,建议直接定义double类型
System.out.println(num*100+"%");
//第二种
double count1 = 0.6;
DecimalFormat df = new DecimalFormat("0.0%");//设置精确的位数,两位小数则0.00%
String r1 = df.format(count1 );
System.out.println("30岁以下的比例是:"+r1);

3.String类型的数转换为int类型

String s = "123456";
int num = Integer.parseInt(s);

4.求一个数的个位,十位,百位,千位,思路用%和/

int i=1234;
int a = i % 10;//个位
int b = (i % 100) / 10;//十位
int c = (i % 1000) / 100;//百位
int d = i / 1000;//千位

5.\n 换行 \t 三个空格 注意是反斜杠
6.产生一个随机数
Math.random()==> 0-1的随机小数(包头不包尾,有0无1),要范围1-10的随机数,则*10+1,在强转为int类型。

int random = (int) (Math.random()*10+1);

理解 相当于数学中的[0,1) 乘10,即两边同时乘10,加1即两边同时加1,得[1,11),其他随机范围同理。
7. 将其他数据类型转为String类型只需要加上一个""

int num =3;
String s=num+"";

二、while循环

语法
初始化语句A
while(循环判断表达式B){
循环操作C
循环变量改变D
}
执行流程: abcdbcd…直到循环判断表达式结果为false时,结束循环(b的结果必为布尔类型)
例子:用while多次重复输入数据
思路: 用布尔类型标记判断是否需要循环,当不需要循环时改变布尔标记的值中断循环

public class Test01 {
    public static void main(String[] args) {
        int ran = (int) (Math.random() * 100 + 1);
        Scanner sc = new Scanner(System.in);
        //定义一个布尔类型标记判断是否需要循环
        boolean flag = true;
        while (flag) {
            System.out.println("输入数字");
            int num = sc.nextInt();
            if (num == ran) {
                System.out.println("猜中");
                flag = false;//改变布尔标记的值中断循环
            } else if (num < ran) {
                System.out.println("猜小了");
            } else {
                System.out.println("猜大了");
            }
        }
    }

三、do while 循环

语法:
初始化语句 A;
do{
循环操作 B
循环变量改变 C
}while(循环条件判断D);
注意最后有分号
流程 abcdbcd…直至循环判断表达式结果为false时结束循环。

四、结束循环

break; 结束整个循环
cotinue; 结束本次循环,执行下一次循环
return;结束所在的方法来结束方法内的整个循环(main方法也是方法)

public class Test07 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
for (int i=1;i<=5;i++){
System.out.println("请输入第"+i+"个同学的成绩");
int num = input.nextInt();
if (num <0){
return;
//结束本次执行 执行下一次循环
//continue;
//break;
}
System.out.println(num);
}
}
}

五、循环总结

明确知道循环次数用for循环,不知道循环次数用while循环;
for while 循环可能一次都不执行,初始化语句后第一次判断就为flase;
do while 循环一定会执行一次。
用循环时分析四要素 初始化语句 循环表达式判断 循环操作 避免死循环(改变变量,或者break等语句结束)
一般代码是从上到下,从左到右,for 循环是先执行循环操作,在返回来变量改变。

六、死循环

常见的死循环写法:
for( ; ; ){
}
while(true){
}
do{
}while(true);
实际应用 :即时通讯(网上聊天)需要使用死循环来监听器状态
在实际开发中使用死循环的时候 都会添加停止的循环条件

七、嵌套for循环

常用两次嵌套,最多三次嵌套
语法:
for(初始化语句A;循环条件判断B;循环变量改变C){
for(初始化语句D;循环条件判断E;循环变量改变F){
循环操作
}
}
九九乘法表,与打印*形图案

public class Test06 {
    public static void main(String[] args) {
        //九九乘法表,双重for循环
        for (int i = 1; i <= 9 ; i++) {
            for (int j = 1; j <= i ; j++) {
                System.out.print(i+"*"+j+"="+i*j+"\t");
            }
            System.out.println("");

        }
        //第一层循环控制行,表i行,第二层控制列,表j列
        for (int i = 1; i <=3; i++) {
            for (int j = 1; j <= 4; j++) {
                System.out.print("*" + "\t");//没有ln,不换行
            }
            System.out.println("");//换行
        }
    }
}

八、方法

1.语法:
访问修饰符 返回值类型 方法名称(参数列表) {
方法体;
return 返回值;
}

public static int getSum(int num1, int num2) {
        int sum = num1 + num2;
        return sum;
    }

访问修饰符: public static
返回值类型:在java中必须明确其返回值类型 没有返回值使用void来进行修饰
方法名称:通俗易懂 遵循小驼峰命名
参数列表:参数可以是基本数据类型 也可以是引用数据类型 不同的参数以逗号来进行分割
方法体:执行的具体的逻辑代码
return 返回值; 执行方法获取产出物 得到结果
2.方法的调用
方法必须调用才会执行
在这里插入图片描述
直接调用中的执行方法的逻辑代码,即运行方法体一遍,当方法体中有System.out.println输出语句,一定会输出此语句内容,不需要返回的值,所以使用void返回值类型。void返回值类型也能有形参。
3.方法的注意点
1)方法定义的注意点:
方法在调用的时候可以相互进行调用 甚至自己调用自己(递归)
所有的方法都是平级关系 没有上下级关系
2)方法参数注意点
方法定义时候的参数是形参(形式参数) 其实就是声明变量 不同的参数以逗号来进行分割
方法调用时候的参数是实参(实际参数) 其实就是给变量赋值 实际参数的数据类型必须与定义的参数的数据类型一样,但可以与方法返回值类型不一样
3)方法的返回值注意点
A.return 可以用于结束方法 也可以用于返回数据
B.如果方法的返回值类型是void进行修饰的 最后一句必为 return; 用于来结束方法
C.如果方法类型是数据类型, 最后一句必为return 返回数据;返回的数据类型必须与定义的数据类型一致

D.如果方法有返回值 返回的结果给调用者

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值