0基础java入门:第二十三节.Java方法的练习演示

本文通过实例演示了如何使用Java方法来简化代码,提高可读性和复用性。首先介绍了将判断素数的过程封装为`isPrime`方法,然后展示了如何在遍历数组和统计素数平均值的场景中应用该方法,以此说明方法在逻辑拆分和代码维护中的优势。
摘要由CSDN通过智能技术生成

0基础java入门:第二十三节.Java方法的练习演示

我们使用方法的最终目的是让代码变得更简单。怎样才能让代码变得更简单的?这里我们可以通过将一个复杂的业务拆分成多个简单的业务书写成方法,这样可以增加代码的复用增加代码的可读性和减少维护成本。

例如: 我们 想通过程序 遍历一个数组,之后统计数组中素数的的平均值。这个业务中我们如果只是统计 平均值还是比较好处理的。但是判断素数的过程有些复杂,而且还要再数组的遍历中同时进行 判断素数 统计 的操作。如果我们 将判断素数的过程书写为一个方法 ,之后的操作就变得简单了。

代码演示:

public class TestFunction {
	// 主方法 
	public static void main (String[] args) {
		boolean f1 = isPrime(5);
		// 输出结果
		System.out.println(f1);

		boolean f2 = isPrime(10);
		// 输出结果
		System.out.println(f2);
	}
	/** 方法 isPrime  
		参数 int x
		返回值 boolean 类型
		功能 参数x是素数 返回 true结果 不是素数返回 false结果
	*/
	public static boolean isPrime(int x) {
		boolean f = true;
		if(x<2){
			f = false;
		}else{
			for(int i=2;i<=Math.sqrt(x);i++){
				if(x%i==0){
					f = false;
					break;
				}
			}
		}
		return f;
	}
}

运行结果:

分析一波: isPrime方法,功能是判断一个整数是不是素数。结果中 5 的结果是true ,10的结果是fasle。有了这个方法之后,在这个类中判断素数就都可以用它来解决了。比如输出1--100 之间素数的代码会变得更简单。

代码演示:

public class TestFunction {
	// 主方法 
	public static void main (String[] args) {
		// 输出1--100 之间的素数
		for(int i=1;i<=100;i++){
			// 通过 调用方法 来判断i是不是素数
			if(isPrime(i)){
				System.out.println(i);
			}
		}
	}
	/** 方法 isPrime  
		参数 int x
		返回值 boolean 类型
		功能 参数x是素数 返回 true结果 不是素数返回 false结果
	*/
	public static boolean isPrime(int x) {
		boolean f = true;
		if(x<2){
			f = false;
		}else{
			for(int i=2;i<=Math.sqrt(x);i++){
				if(x%i==0){
					f = false;
					break;
				}
			}
		}
		return f;
	}
}

运行结果:

分析一波:代码中我们在 1--100 的循环中,通过调用isPrime方法来判断 i 是不是素数,之后进行输出。再来一个程序体验方法的拆分逻辑的好处。比如定义一个数组输出数组中的素数,并统计素数的平均值是多少。

代码演示:

public class TestFunction {
	// 主方法 
	public static void main (String[] args) {
		int[] arr = {1,2,3,4,5,6,7,8};
		// 遍历数组 并判断素数 统计
		double sum = 0;
		int count = 0;
		for(int i=0;i<arr.length;i++){
			// 通过 调用方法 来判断arr[i]是不是素数
			if(isPrime(arr[i])){
				// 输出素数
				System.out.println(i);
				// 统计和
				sum+=arr[i];
				// 统计个数
				count++;
			}
		}
		// 最后计算平均数
		if (count==0){
			System.out.println("数组中没有素数");
		}else{
			System.out.println("数组中的素数平均数是"+(sum/count));
		}
	}
	/** 方法 isPrime  
		参数 int x
		返回值 boolean 类型
		功能 参数x是素数 返回 true结果 不是素数返回 false结果
	*/
	public static boolean isPrime(int x) {
		boolean f = true;
		if(x<2){
			f = false;
		}else{
			for(int i=2;i<=Math.sqrt(x);i++){
				if(x%i==0){
					f = false;
					break;
				}
			}
		}
		return f;
	}
}

运行结果:

分析结果:观察代码分析一波,这里通过方法的调用,把在遍历数组中的判断素数过程变得更简单了。这样代码的结果变得更难简单,更利于阅读和更改维护。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值