Java学习笔记(五)--嵌套循环--方法

一、 while循环

执行流程与for循环相同,可以以理解为for循环的一种变形‘
格式:
初始化变量;
While(循环条件){循环体;初始化变量的自增}
While:关键字,表示循环
执行步骤:

在这里插入图片描述

代码:

package day05.text;

public class text_class {
	public static void main(String[] args) {
		//纸0.01米,珠穆朗玛峰8848米,纸折叠多少次能达到其高度
		int i = 1,j = 0;
		while(i<=884800) {
			i*=2;//纸张折叠	
			System.out.println("第"+j+"次折叠纸张的厚度等于"+i);
			j++;//次数
		}
		System.out.println("折叠次数等于"+j);
		
		//计算1-100内能被7整除的整数的个数
		/*int i = 1,j = 0;
		while(i<101) {
			if(i%7==0){//判断i能否被7整除
				j++;
				}
			i++;//注意,不要忘了写初始化变量的自增
		}
		System.out.println("1-100能被7整除的整数的个数="+j);
		*/
	}
}

二、 死循环

循环条件永远成立,循环体一直执行跳不出循环的现象叫做死循环。
使用场景:需要做的事情不需要停止,一直执行。
For循环结构:for( ;true;){循环体}
While循环结构:while(true){循环体}【常用】
弊端:一直执行不停止,容易导致内存溢出的异常现象。
代码示例:

//while死循环
	/*while(true){
		System.out.println("single dog all the day!!");
	}
	*/
	
	//for死循环
	/*for(;;) {//循环条件为true,一直满足条件
		System.out.println("single dog all the day!!");
	}
	*/

三、 跳转语句

在循环过程中,人为干预循环过程使用到的工具,工具叫做跳转语句。
Break:停止整个循环;
Cuntinue:停止当前【本次】循环,继续下一次循环;

//模拟用户登录
	/*int right_name = 123;
	int right_key = 456;
	Scanner sc = new Scanner(System.in);
	while(true) {
		System.out.println("请输入用户名");
		int name = sc.nextInt();
		System.out.println("请输入密码");
		int key = sc.nextInt();
		if(name == right_name&&key == right_key) {
			System.out.println("您成功上线");
			break;
		}else {
			System.out.println("请重新输入");
		}
		
	}
	*/

四、 嵌套循环

就是一个循环的循环体是另一个循环体。

	//五行五列三角形*
		/*for (int i = 0; i < 6; i++) {
			for (int j = 0; j < i; j++) {
				
				System.out.print("*");
			}
			System.out.println("");
		}
		*/
//四行五列**
		/*for(int i=0;i<4;i++) {
			for(int j=0;j<5;j++) {
		System.out.print("*");
			}
			System.out.println();
		}
		*/
		
		//嵌套循环,教练让学员跑三次1500米,操场一圈是500米
		/*int m = 0,n = 0;
		for(int i=0;i<3;i++) {
			for(int j=0;j<3;j++) {
				m+=500;
				System.out.println("跑完了"+m+"米");
			}
			n++;
			System.out.println("跑完了"+n+"次1500米");
		}
		*/

Println():打印完内容自动换行
Print():打印完内容不会换行

五、 方法

概念【本质】:一段具有特殊功能的代码段
表现为:使用固定格式把特殊功能的代码段封装起来并起名,下次使用该功能时直接找这个名字,就能使用这段代码。叫做方法。
好处:
1、 简化了代码的重复性,提高了代码的复用性
2、 提高了代码的安全性
3、 提高了开发效率,维护性提升
定义:
格式: 修饰符 返回值类型 方法名称(参数列表){方法体}
解释:
修饰符:目前情形下:public static
返回值类型:代码段执行完毕得到的结果值的数据类型(基本数据类型)
如果代码段执行完毕没有数值,相当于没有数据类型,返回值类型用void来代替数据类型。Void不是数据类型。
方法名:就是特殊代码段起的名字【为了将来使用改代码段好找】
参数列表:就是特殊代码段执行的时候会使用到的一些数据,用来存放这些数据的一个 变量空间
方法体:就是拥有特殊功能的代码段
没有返回值:直接就是方法体【执行完毕只是一种效果,没有值】
有返回值:写完方法体,return语句;【执行完毕有一个数值,需使用return返回给调用者】
定义位置:类中方法外

package com.ujiuye.demo;
public class Test02 {
public static void main(String[] args) {    
       
}    
//类中方法外    
public static  void printStar() {    
//打印5行内容        
for (int i = 1; i <= 5; i++) {        
//打印每一行的内容  每行* 个数小于等于对应的行数 就打印            
for (int j = 1; j <= i; j++) {            
//打印*                
System.out.print("*");                
}            
//打印完一行需要换行            
System.out.println();            
}        
}    
}

方法的调用:
格式:方法名称(实际参数)
表现方式:直接调用:方法名称(实际参数)
输出调用:把方法调用放到输出语句中:
System.out.println(方法名称(实际参数))
调用的方法必须有返回值
赋值调用:把方法调用赋值给一个变量
Int a = (方法名称(实际参数));
调用的方法必须有返回值

方法的注意事项

方法定义:
(1)方法不能嵌套定义,方法都是定义在类中方法外。
(2)方法和方法先后没有区别
(3)方法的定义是平级关系
(4)方法可以嵌套调用【方法里面可以调用方法】,甚至可以自己调用自己

参数列表

形式参数
概述:就是存在于方法的定义中,是一个没有被赋值的变量,具有数据类型修饰的
特点:
1、存在方法的定义参数列表中
2、是变量的声明【没有被赋值的变量】
3、肯定有数据类型的修饰【变量有数据类型】
比如:

 getSum(int a,int b){}
//int a 和int b就是形式参数。

实际参数
概述:方法调用的时候传入的值【对方法形式参数的回应(对变量赋值)】
存在方法的调用中,是一个常量值或者是一个对象【具体的东西】
特点:
1、存在于方法的调用中
2、是一个常量
3、没有数据类型修饰
比如:getSum(34,56) 34 和56 就是实际参数
方法在内存中的理解
寄存器
本地方法栈
栈内存
堆内存
方法区
过程:
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值