【BigData】Java基础_定义工具类,对ArrayList排序并且求最大值、最小值、平均值
需求描述
编写一个工具类,对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排序并且求最大值、最小值、平均值的更多相关文章
- JAVA基础补漏--Collections工具类排序
Collections在对自定义对象进行排序时,自定义类需要对compareTo()函数进行重写. public class Student implements Comparable<Stud ...
- java学习_文件工具类
工具类里面的方法全部都是静态的,调用的时候不需要实例化
- Java基础语法(自定义类、ArrayList集合)
Java基础语法 今日内容介绍 u 自定义类 u ArrayList集合 第1章 引用数据类型(类) 1.1 引用数据类型分类 提到引用数据类型(类),其实我们对它并不陌生,如使用过的Scanner类 ...
- Java基础六(自定义类、ArrayList集合)
今日内容介绍1.自定义类型的定义及使用2.自定义类的内存图3.ArrayList集合的基本功能4.随机点名器案例及库存案例代码优化 ###01引用数据类型_类 * A: 数据类型 * a: java中 ...
- Java 后台验证的工具类
Java 后台验证的工具类 public class ValidationUtil { //手机号 public static String mobile = "^( ...
- Redis 工具类 java 实现的redis 工具类
最近了解了一下非关系型数据库 redis 会使用简单的命令 在自己本地电脑 使用时必须先启动服务器端 在启动客户端 redis 简介 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内 ...
- Rhino+envjs-1.2.js 在java运行网站js 工具类
java爬虫遇到个页面加密的东西,找了些资料学习学习 做了个java运行js的工具类,希望对大家有用,其中用到client(获取js)可以自行换成自己的client.主要是用了 Rhino就是Java ...
- Java学习-041-颜色工具类(RGB,HEX)
在日常的网页开发中,经常需要进行颜色数值获取.转换,例如获取红色,获取蓝色,获取绿色,RGB转十六进制颜色,十六进制颜色转RGB等,因而在学习过程中,写了一个小工具类,仅供各位小主参考! 多不闲言,直 ...
- Java学习-049-正则工具类
自去年九月份决定再次入学和职业资格进阶,开始备战二者考试至今,以及当下进行中的职称申请,犹如孤独的狼,不断前行在路上,而今凡凡总总的已历8月... 不感慨了,如下为一园友需要的正则工具类,直接上码: ...
随机推荐
- # .NET Core下操作Git,自动提交代码到
.NET Core下操作Git,自动提交代码到 转自博客园(阿星Plus) .NET Core 3.0 预览版发布已经好些时日了,博客园也已将其用于生产环境中,可见 .NET Core 日趋成熟 回归 ...
- Queue接口分析:add和offer区别,remove和poll方法到底啥区别
Queue接口: public interface Queue<E> extends Collection<E> { /* * add方法,在不违背队列的容量限制的情况,往队列 ...
- C#获取剪切板的内容
// GetDataObject获取当前剪贴板上的数据 IDataObject data = Clipboard.GetDataObject(); // 将数据与指定的格式进行匹配,返回bool if ...
- asp.net core流式上传大文件
asp.net core流式上传大文件 首先需要明确一点就是使用流式上传和使用IFormFile在效率上没有太大的差异,IFormFile的缺点主要是客户端上传过来的文件首先会缓存在服务器内存中,任何 ...
- LoadRunner 11 的兼容问题及权限问题
1.LoadRunner 11 在服务器系统中可能出现 不兼容问题. 要对 安装目录bin\LRLauncherApp.exe 和 bin\wlrun.exe 右键属性兼容性(视系统定). 2.如果填 ...
- PIE 插件式开发小笔记__PIESDK学习体会
基于PIE.NET-SDK插件式二次开发文档笔记: PIE 插件式开发配置文件: 它里面一行如下: 理解上一行'Item'关系-> library:为插件类名(程序集名称+后缀 ...
- Java中的集合类(List,Set.Map)
1.List 1.1 Arraylist 与 LinkedList 区别 是否保证线程安全: ArrayList 和 LinkedList 都是不同步的,也就是不保证线程安全: 底层数据结构: Arr ...
- CSS泣鬼神
博主网站 一.CSS介绍和语法 CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素. 每个CSS样式由两个组成部分:选择器和声明.声明又包括属性和属性值.每个声明 ...
- Vue组件间通信6种方式
摘要: 总有一款合适的通信方式. 作者:浪里行舟 Fundebug经授权转载,版权归原作者所有. 前言 组件是 vue.js 最强大的功能之一,而组件实例的作用域是相互独立的,这就意味着不同组件之间的 ...
- CPU和Memory压力测试方法
一:用原生Centos自带的工具 1. CPU 下面命令会创建 CPU 负荷,方法是通过压缩随机数据并将结果发送到 /dev/null: cat /dev/urandom | gzip -9 > ...