【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月... 不感慨了,如下为一园友需要的正则工具类,直接上码: ...
随机推荐
- IDEA Rider 准备试用一段时间(1)
IDEA Rider是一个C#开发工具,目前最高版本支持C# 8.0语法. IDEA Rider2019.2月版本相比之前2018版本多了新功能,又支持Edit and Continue,所以准备试用 ...
- C# Thread was being aborted
先重现问题 1.新建一个aspx页面项目,插入两个页面WebForm1.aspx,WebForm2.aspx, WebForm1代码修改如下 protected void Page_Load(obje ...
- scala高级部分--题目1
给你一个集合val list=List(1,2,3,4,"abc"),请完成如下要求 将集合list中所有的数字+1,并返回一个新的集合 要求忽略掉非数字的 object work ...
- scala基础题--面向对象1
练习1 编写computer类,包含CPU.内存.硬盘等属性,getDetails方法用于返回computer的详细信息. 编写PC子类,继承computer类,添加特有属性[品牌brand] 编写n ...
- Java 8——Base64工具
在java 8之前如果需要使用base64编解码,必须使用三方库,如:apache的commons-codec. 但是java 8将base64编解码的工具引入进来: public class Tes ...
- 【java】Execption的 e.getMessage()为null的解决方法
================================ 场景: 当代码出现异常时通常都需要将异常信息写入到日志中,异常信息越详细越有利于问题的排查.而通过的Exception.getMess ...
- pip 命令安装 rdbtools
命令 pip install tdbtools 如果出现类似如下错误 Could not fetch URL https://pypi.org/simple/redis/ 说明morning的pip ...
- 虚拟机Ubuntu18.04 root下 连接 windows 中 winScp
先查看自己虚拟机中是否有 ssh服务 如果没有的话先安装 apt-get install openssh-server 安装完之后 先手动开启一下服务 /etc/init.d/ssh restart ...
- 剑指offer 栈的压入和弹出
题目描述输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈 ...
- WPF绑定(Binding)(4)
什么是绑定(Binding)? 在winform中, 我们常常会用到各种类型的赋值, 例如: button1.Text="Hello"; label.Text="Hell ...