java-方法

/*
 * 编写for循环1-100所有的数
 * 素数
 * 知识点:
 * for循环
 * 嵌套
 * 标记
 * */
public class helloword {

	public static void main(String[] args) {
		
		for(int i=2;i<=100;i++) {
			
			//判断i是否为素数
			boolean isSuShu=true;//[标记在开发中比较常用]
			for(int j=2;j<i;j++) {
				if(i%j==0) {
					isSuShu=false;
					break;
				}
			}
			if(isSuShu)
				System.out.println(i);

		}
		
		
	}

}

升级版
两种方式统计

  • 整除
  • 归零
public class helloword {

	public static void main(String[] args) {
		
		//升级版:【加入统计机制】
		int count=0;
		for(int i=2;i<=100;i++) {
			
			//判断i是否为素数
			boolean isSuShu=true;//[标记在开发中比较常用]
			for(int j=2;j<i;j++) {
				if(i%j==0) {
					isSuShu=false;
					break;
				}
			}
			
			//采用整除方式统计
			if(isSuShu)
			{
				System.out.println(i+"");
			count++;
			//每8个换行
			if(count%8==0) {
				System.out.println();
			}
			}
			
			//采用归零方式统计
			/*if(isSuShu)
			{
				System.out.println(i+"");
			count++;
			//每8个换行
			if(count==8) {
				System.out.println();
				//归零
				count=0;
			}
			}
			*/
		}
		
		
	}

方法

  • 方法的基础语法
  • 方法的重载机制
    引入:

不使用方法

public class helloword {

	public static void main(String[] args) {
		//10+20的和
		int a=10;
		int b=20;
		int c=a+b;
		System.out.println(a+"+"+"b"+"="+c);
		
		//20+30的和
		int x=100;
		int y=200;
		int z=a+b;
		System.out.println(x+"+"+"y"+"="+z);
		
		//以上2个需求就是一个需求,功能相同,只是数据不一样
	}

}

以上2个需求就是一个需求,功能相同,只是数据不一样

在java中有一种机制:
功能相同的代码写一次,只需给代码传递具体数据
使用这个方法为 **调用**

使用这个方法
代码重复使用
public class helloword {

	public static void main(String[] args) {
		//计算两个数的和
		helloword.sumInt(10,20);
		helloword.sumInt(100,200);
	}
//单独定义一个方法
	//该方法完成两个int数据的和,并将结果输出
	public static void sumInt(int a,int b) {
		int c=a+b;
		System.out.println(a+"+"+b+"="+c);
	}
}

方法的本质:(c语言中函数)
方法就是一段代码片段,并且这段代码片段可以完成某个特定的功能,并且可以重复只用。

  • 方法定义在类体中,在一个类中可以有多个方法,
  • 方法体中不能再定义方法。
  • 方法编写的位置没有先后顺序。
  • 方法体中的代码自上而下依次执行。

1.方法怎么定义,语法结构

{修饰符列表}返回值类型 方法名{形式参数列表}{
方法体;}

1.1修饰符列表

  • 可选项,不是必须的
  • 目前统一写:public static
  • 方法修饰符列表中有static关键字,怎么调用这个方法
    - 类名.方法名(实际参数列表);

1.2 返回值类型

什么是返回值:
一个方法是可以完成某个特定功能的,这个功能结束后需要返回最终执行的结果,执行结果可能是一个具体存在的数据,而这个具体存在的数据就是返回值

  • 返回值有具体数据类型(任意一种都可以,包括引用数据类型)

  • 也可能不返回结果,则必须编写 void关键字,如不是,则必须返回一个具体的数值,否则报错。

  • 返回值类型是void 的时候,在方法中不能编写 return 值; 这样的语句,可以编写 return;这样的语句

  • 只要带有return关键字的语句执行,return语句所在的方法结束

  • 一个方法有返回值,可以选择不接受,但是大部分情况我们会接受

1.3方法名

  • 见名知意
  • 驼峰命名原则
  • 合法标识符
  • 最好是动词
  • 首字母小写,后面每个单词的首字母大写

1.4方法体

  • 必须用大括号
  • 方法体中代码自上而下
  • 分号结束

1.5形式参数列表

  • 形参是局部变量
  • 个数可多个
  • 形参之间用逗号隔开
  • 形参中取决定作用是形参的数据类型,形参的名字就是局部变量的名字
  • 方法在调用的时候,实际给这个方法传递的真的hi数据被称为:实际参数
  • 实参列表和形参列表满足数量相同,数据类型对应相同类型不同时 可以自动类型转换


//public表示公开的
//class表示定义类
//text表示一个类名
public class text {

	//类体
	//类体中不能直接编写java语句,除声明变量外
	//方法出现在类体中
	
	//方法
	//public表示公开的
	//static表示静态的
	//String[] args String表示数据类型,arg[]一个局部变量名可以是随意的
	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		
	}

}


深入return语句

  • 带有retur关键字,只要执行,现在的方法就结束
  • 同一个作用域中 return 语句下面不能编写任何代码,因为这些代码永远执行不到,会编译报错

//编译报错,以下程序缺少返回语句,编译器认为无法百分百保证 “return 1”会执行
public static int m() {
			int a=10;
			if(a>3) {
				return 1;
			}
		
		}
// if……else 一定会执行其中一个
public static int m() {
			int a=10;
			if(a>3) {
				return 1;
			}
		 else{
		 return 0;
		 }
		}

方法的调用

  • 1.方法的修饰符中有static关键字,完整的调用方式是:类名.方法名
  • 2.但是,有时候“类名可以省略”,对于方法的修饰符列表当中有static关键字的,可省,省略后,默认从当前(同一)类中找方法
  • 3.调用方法必须带括号
  • 建议在一个java源文件中只定义一个class文件

在返回值类型是void方法 使用return 语句,主要是为了终止语句,无法返回值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值