需求描述

编写一个工具类,对ArrayList实现以下功能:

① 排序

② 求最大值

③ 求最小值

④ 求平均值

需求实现

实现代码

package cn.test.logan.day04;

import java.util.ArrayList;

/**
* 编写一个工具类:对整型的Arraylist实现排序、求最大值、最小值、平均值等
* @author QIN
*
*/
public class ListUtils {
// 排序
public static void sort(ArrayList<Integer> list) {
for(int i=0;i<list.size()-1;i++) {
for(int j=0;j<list.size()-1-i;j++) {
if(list.get(j)>list.get(j+1)) {
int tmp = list.get(j);
list.set(j, list.get(j+1));
list.set(j+1, tmp);
}
}
}
} // 求最大值
public static int getMax(ArrayList<Integer> list) {
int tmp = list.get(0);
for(int i=0;i<list.size();i++) {
if(list.get(i) > tmp) {
tmp = list.get(i);
}
}
return tmp;
}
public static int getMin(ArrayList<Integer> list) {
int tmp = list.get(0);
for(int i=0;i<list.size();i++) {
if(list.get(i) < tmp) {
tmp = list.get(i);
}
}
return tmp;
}
public static float getAvg(ArrayList<Integer> list) {
int sum=0;
for(int i=0;i<list.size();i++) {
sum+=list.get(i);
}
float avg = (float)sum/list.size();
return avg;
} }

ListUtils.java

package cn.test.logan.day04;

import java.util.ArrayList;

public class ListUtilsTest {
public static void main(String[] args) {
// 定义ArrayList
ArrayList<Integer> aylist = new ArrayList<Integer>();
aylist.add(30);
aylist.add(10);
aylist.add(20);
aylist.add(50);
aylist.add(40); // 排序
ListUtils.sort(aylist);
System.out.println(aylist.toString());
System.out.println("------------------------------"); // 求最大值
int max = ListUtils.getMax(aylist);
System.out.println(max);
System.out.println("------------------------------"); // 求最小值
int min = ListUtils.getMin(aylist);
System.out.println(min);
System.out.println("------------------------------"); // 求平均值
float avg = ListUtils.getAvg(aylist);
System.out.println(avg);
System.out.println("------------------------------");
}
}

ListUtilsTest.java

【BigData】Java基础_定义工具类,对ArrayList排序并且求最大值、最小值、平均值的更多相关文章

  1. JAVA基础补漏--Collections工具类排序

    Collections在对自定义对象进行排序时,自定义类需要对compareTo()函数进行重写. public class Student implements Comparable<Stud ...

  2. java学习_文件工具类

    工具类里面的方法全部都是静态的,调用的时候不需要实例化

  3. Java基础语法(自定义类、ArrayList集合)

    Java基础语法 今日内容介绍 u 自定义类 u ArrayList集合 第1章 引用数据类型(类) 1.1 引用数据类型分类 提到引用数据类型(类),其实我们对它并不陌生,如使用过的Scanner类 ...

  4. Java基础六(自定义类、ArrayList集合)

    今日内容介绍1.自定义类型的定义及使用2.自定义类的内存图3.ArrayList集合的基本功能4.随机点名器案例及库存案例代码优化 ###01引用数据类型_类 * A: 数据类型 * a: java中 ...

  5. Java 后台验证的工具类

    Java 后台验证的工具类 public class ValidationUtil {         //手机号     public static String mobile = "^( ...

  6. Redis 工具类 java 实现的redis 工具类

    最近了解了一下非关系型数据库 redis 会使用简单的命令 在自己本地电脑 使用时必须先启动服务器端 在启动客户端 redis 简介 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内 ...

  7. Rhino+envjs-1.2.js 在java运行网站js 工具类

    java爬虫遇到个页面加密的东西,找了些资料学习学习 做了个java运行js的工具类,希望对大家有用,其中用到client(获取js)可以自行换成自己的client.主要是用了 Rhino就是Java ...

  8. Java学习-041-颜色工具类(RGB,HEX)

    在日常的网页开发中,经常需要进行颜色数值获取.转换,例如获取红色,获取蓝色,获取绿色,RGB转十六进制颜色,十六进制颜色转RGB等,因而在学习过程中,写了一个小工具类,仅供各位小主参考! 多不闲言,直 ...

  9. Java学习-049-正则工具类

    自去年九月份决定再次入学和职业资格进阶,开始备战二者考试至今,以及当下进行中的职称申请,犹如孤独的狼,不断前行在路上,而今凡凡总总的已历8月... 不感慨了,如下为一园友需要的正则工具类,直接上码: ...

随机推荐

  1. R语言dai xie

    R语言,Python长期招代写,作业量充足,需要一定英文能力,价格满意.有意者请留言联系,谢谢

  2. windows10下录屏

    windows10自带了录屏功能.运行win+G即可打开.如果出现错误,可以运行如下PS脚本. https://files.cnblogs.com/files/mqingqing123/reinsta ...

  3. logstash 对配置文件conf敏感信息,密码等加密

    logstash的配置文件conf经常会涉及敏感信息,比如ES,mysql的账户密码等,以下使用logstash导入mysql为例子,加密隐藏mysql的密码. 在向keystore中添加key及其s ...

  4. C#调用WebService(服务引用-xml)

    情形:做接口调用三方WebService,WebService地址外网无法访问 方案: Step1:内网环境(可访问三方WebService地址,此处地址以http://127.0.0.1/WebSe ...

  5. 如何提升Web前端性能?

    什么是WEB前端呢?就是用户电脑的浏览器所做的一切事情.我们来看看用户访问网站,浏览器都做了哪些事情:输入网址 –> 解析域名 -> 请求页面 -> 解析页面并发送页面中的资源请求 ...

  6. 记录下vue keep-alive IOS下无法保存滚动scroll位置的问题

    最近 做的项目,遇到了一点小麻烦,就是我一个页面A页面是加载 列表数据 ,B页面是展示详细信息的.A进去B时,缓存A页面. 效果 做出来 后,缓存是缓存数据 了,但是当我A页面的列表数据 好多,要滚动 ...

  7. TinyMCE基础配置

    选择器配置 插件配置 工具栏配置 菜单配置 皮肤配置 编辑区宽高配置 编辑区样式配置 隐藏状态栏 选择器配置 选择器就是CSS选择器,它告诉TinyMCE哪个元素是可编辑的. 示例: tinymce. ...

  8. android studio学习----The project encoding (windows-1252) does not match the encoding specified in the Gradle build files (UTF-8)

    Warning:The project encoding (windows-1252) does not match the encoding specified in the Gradle buil ...

  9. android Gradle下载慢,使用阿里镜像

    在Project下的 build.gradle添加阿里镜像 buildscript { repositories { maven{ url 'http://maven.aliyun.com/nexus ...

  10. elastic date时区问题解决办法

    之前介绍filter date插件时就谈到时区问题,但是没有说明白.最近在使用range查询时间范围内的数据时出现了数据量不一致的情况.特地了解了下ELK Stack中关于时区的问题. 问题: 使用k ...