A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 小鲁哥哥 于 2018-2-9 10:11 编辑

黑马程序员JavaEE基础阶段必会案例NO.27



     黑马程序员课程内容丰富多样,每个知识点我们都设计有新奇的案例让大家练习。黑马程序员训练营的课程也是案例驱动教学,每天都会进行大量的代码练习。今天我们就来一起做一个基础第一阶段第6天的一个小案例。
案例:
        获取大于数组中元素值平均数的元素,具体要求如下:
        1.定义String getNums (int[] arr)静态方法,
        方法内要求完成:获取指定数组arr中所有元素值的平均数avg,
        并返回元素值大于等于avg的所有元素(元素间用逗号连接)
        2.定义main方法,方法内完成:
                2.1 随机获取5个1~99之间的整数(包含1和99),并存入数组arr中
                2.2 传递arr调用getNums方法,获取返回值并在控制台打印.
     案例分析:这个案例主要考察的知识点是方法,数组,随机数。
    我们第一步要做的事先按照要求写一个方法,参数和返回值都已经给出了。我们先求出平均数
   
    题目中要求我们把大于平均数的元素输出出来,而这个方法返回值是字符串类型的,所以我们要把这些元素拼成字符串再返回。
   
   ok,这个方法我们就完成了,也就是第一问我们已经做完了。接下来看第二问。
   随机获取5个1~99之间的整数(包含1和99),并存入数组arr中
   这里我们获取随机数应该都不陌生了,用Random类就可以实现,来吧!敲起来~
   
   好,下面是全部代码:
  
[Java] 纯文本查看 复制代码
import java.util.Arrays;[/align]import java.util.Random;

public class Test {
        public static void main(String[] args) {
                Random r = new Random();
                int[] arr = new int[5];
                for (int i = 0; i < 5; i++) {
                        int n = r.nextInt(99)+1;//生成随机数
                        arr[i] = n;
                }
                System.out.println("数组数据:"+Arrays.toString(arr));
                System.out.println( getNums(arr));
        }

        public static String getNums(int[] arr) {
                int sum = 0;
                for (int i = 0; i < arr.length; i++) {
                        sum += arr[i];
                }
                int avg = sum / arr.length;
                // 大于平均数的元素
                String s = "";
                for (int i = 0; i < arr.length; i++) {
                        if (arr[i] > avg) {
                                s = s + arr[i] + ",";
                        }
                }
                return "平均数:" + avg + " 大于平均数的元素:" + s;
        }
}

ok!大工告成!!
运行结果没有问题
好了,希望通过这个案例大家对于字符串相关的方法能更加熟悉,如果再遇到相关的题目可以自己完成!现在把这个案例多敲几遍吧!
   其实,每个案例都有很多种写法,不同的人可能有不同的思路。黑马程序员训练营也是非常鼓励大家开动脑筋积极思考的。
      做完了这个题,离你走上人生巅峰又近了一步,继续加油吧!骚年!  

      点进这个帖子的同学肯定是要奋发图强,学技术拿高薪的有志青年,这里我看你骨骼惊奇,是个绝世的练武奇才,你我有缘,今天我就把这个武林秘籍如来神掌传授于你! 什么?不想学如来神掌?不要紧!这里有各个门派的武林绝学,链接拿好!!哈哈哈哈

1 个回复

倒序浏览
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马