发布网友 发布时间:2022-05-06 04:18
共1个回答
热心网友 时间:2022-06-28 17:17
package com.gf.test;
import java.util.ArrayList;
public class ArrayListTest {
public static void main(String[] args) {
ArrayList<Integer> al=new ArrayList<Integer>();
System.out.println("生成100以内的随机数");
//需要生成多少个随机数,就修改循环的次数
for(int i=0;i<100;i++) {
al.add((int)(Math.random()*100));
System.out.println(al.get(i));
}
sort(al);
remove(al);
}
//冒泡排序
public static void sort(ArrayList<Integer> a) {
for(int i=1;i<a.size();i++) {
for(int j=0;j<a.size()-i;j++) {
if(a.get(j)>a.get(j+1)) {
int temp=a.get(j);
/*
* 这里不能使用add,当使用add以后会增加数据,
* 这里涉及到数据交换只需要进行修改,所以用set
*/
a.set(j, a.get(j+1));
a.set(j+1,temp);
}
}
}
System.out.println("冒泡排序结果");
for(int i=0;i<a.size();i++) {
System.out.println(a.get(i));
}
}
public static void remove(ArrayList<Integer> a) {
System.out.println("去除奇数");
for(int i=0;i<a.size();i++) {
if(a.get(i)%2!=0) {
a.remove(i);
/*i--的作用就是当奇数被删除时,当前索引会被下一个元素替代,
*所以需要再次判断一下这个新的数是不是奇数
*/
i--;
}
}
for(int i=0;i<a.size();i++) {
System.out.println(a.get(i));
}
}
}