分析以下需求并实现:1.键盘录入一个数据作为数组的长度;2.请使用随机数给数组赋值;3.再次键盘录入一个数据,统计这个数在该数组中出现的次数。

示例代码:

package com.gx.demo;

import java.util.Arrays;
import java.util.Random;
import java.util.Scanner;

public class Test3 {
	public static void main(String[] args) {
		// 键盘录入一个数字作为数字的长度
		Scanner sc = new Scanner(System.in);
		// 提示用户输入一个整数
		System.out.println("请输入一个整数,作为数组的长度");
		// 创建键盘输入对象
		int number = sc.nextInt();
		// 创建数组
		int[] arr = new int[number];
		// 用随机数给数组赋值
		Random r = new Random();
		// 随机几个随机数呢?
		// 建议使用循环来给数组赋值,循环遍历数组,循环几次,就产生几个随机数
		for (int i = 0; i < arr.length; i++) {			
			/*
			 * 语法说明:
			 * int nextInt() //随机返回一个int型整数; 
			 * int nextInt(int num) //随机返回一个值在[0,num)的int类型的整数,包括0不包括num
			 */
			// 每循环一次,就产生一个随机数
			int num = r.nextInt(10) + 1;// 返回0-9的整数,+1代表返回1-10的整数
			// 把每次产生的随机数赋值给数组
			arr[i] = num;
		}
		// 输出随机数组
		System.out.println(Arrays.toString(arr));
		// 当程序执行到这里的时候,就说明数组已经赋值完毕,再次键盘录入一个数据,统计这个数在该数组中出现的次数。
		System.out.println("请输入一个需要寻找的数据:");
		int n = sc.nextInt();

		/*
		 * 思路: 1、需要定义一个计数器, 2、遍历数组 ,3、需要拿着数组的每一个元素和 n进行比较,
		 * 4、如果相等,那么就让计数器++,5、循环结束后,打印计数器即可。
		 */

		// 需要定义一个计数器
		int count = 0;
		// 遍历数组
		for (int i = 0; i < arr.length; i++) {
			// 需要拿着数组的每一个元素和 n 进行比较
			if (arr[i] == n) {
				// 如果相等,那么就让计数器++
				count++;
			}
		}
		// 循环结束后,打印计数器即可
		System.out.println(n + " 在数组里出现的次数为 " + count + " 次");
	}
}

输出结果:

请输入一个整数,作为数组的长度
10
[2, 1, 6, 4, 10, 7, 5, 3, 3, 5]
请输入一个需要寻找的数据:
3
3 在数组里出现的次数为 2

猜你喜欢

转载自blog.csdn.net/weixin_44563573/article/details/103804109
今日推荐