以下程序功能是实现对集合中元素排序,为什么编译老有问题呢·???有问题语句已经标出???
import java.util.*;
class Test9
{
public static void main(String[] args)
{
ArrayList<Integer> al = new ArrayList<Integer>();
al.add(5);
al.add(4);
al.add(6);
al.add(8);
al.add(10);
al.add(1);
System.out.print("原数组为:");
Iterator<Integer> it2 = al.iterator();
while(it2.hasNext())
{
System.out.print(it2.next()+" ");
}
System.out.println();//换行作用
System.out.print("按从小到大排序后数组为:");
ArrayList a3=Setarray.minToMax(al);
Iterator<Integer> it = a3.iterator();
while(it.hasNext())
{
System.out.print(it.next()+" ");
}
System.out.println();//换行作用
System.out.print("按从大到小排序后数组为:");
ArrayList a4=Setarray.maxToMin(al);
Iterator<Integer> it1 = a4.iterator();
while(it1.hasNext())
{
System.out.print(it1.next()+" ");
}
}
}
class Setarray
{
//定义方法,作用:使集合中元素从小到大排序
public static ArrayList minToMax(ArrayList tt)
{
//定义一个临时容器。
ArrayList newAl = new ArrayList();
Integer[] arr = tt.toArray(new Integer[tt.size()]);//将集合中元素转换为数组中元素 这句话提醒类型不匹配,为什么呢????????
int k;
//对数组中元素按从小到大排序
for(int x=0;x<arr.length;x++)
{
for(int y=x+1;y<arr.length;y++)
{
if(arr[y]<arr[x])
{
k=arr[y];
arr[y]=arr[x];
arr[x]=k;
}
}
}
//将排序后元素按顺序存储在临时集合中
for(int x=0;x<arr.length;x++)
{
newAl.add(arr[x]);
}
return newAl;//返回临时集合
}
//定义方法,作用:使集合中元素从大到小排序
public static ArrayList maxToMin(ArrayList tt)
{
//定义一个临时容器。
ArrayList newAl = new ArrayList();
Integer[] arr = tt.toArray(new Integer[tt.size()]);//将集合中元素转换为数组中元素import java.util.*;import java.util.*;
class Test9
{
public static void main(String[] args)
{
ArrayList<Integer> al = new ArrayList<Integer>();
al.add(5);
al.add(4);
al.add(6);
al.add(8);
al.add(10);
al.add(1);
System.out.print("原数组为:");
Iterator<Integer> it2 = al.iterator();
while(it2.hasNext())
{
System.out.print(it2.next()+" ");
}
System.out.println();//换行作用
System.out.print("按从小到大排序后数组为:");
ArrayList a3=Setarray.minToMax(al);
Iterator<Integer> it = a3.iterator();
while(it.hasNext())
{
System.out.print(it.next()+" ");
}
System.out.println();//换行作用
System.out.print("按从大到小排序后数组为:");
ArrayList a4=Setarray.maxToMin(al);
Iterator<Integer> it1 = a4.iterator();
while(it1.hasNext())
{
System.out.print(it1.next()+" ");
}
}
}
class Setarray
{
//定义方法,作用:使集合中元素从小到大排序
public static ArrayList minToMax(ArrayList tt)
{
//定义一个临时容器。
ArrayList newAl = new ArrayList();
Integer[] arr = tt.toArray(new Integer[tt.size()]);//将集合中元素转换为数组中元素
int k;
//对数组中元素按从小到大排序
for(int x=0;x<arr.length;x++)
{
for(int y=x+1;y<arr.length;y++)
{
if(arr[y]<arr[x])
{
k=arr[y];
arr[y]=arr[x];
arr[x]=k;
}
}
}
//将排序后元素按顺序存储在临时集合中
for(int x=0;x<arr.length;x++)
{
newAl.add(arr[x]);
}
return newAl;//返回临时集合
}
//定义方法,作用:使集合中元素从大到小排序
public static ArrayList maxToMin(ArrayList tt)
{
//定义一个临时容器。
ArrayList newAl = new ArrayList();
Integer[] arr = tt.toArray(new Integer[tt.size()]);//将集合中元素转换为数组中元素
int k;
//对数组中元素按从大到小排序
for(int x=0;x<arr.length;x++)
{
for(int y=x+1;y<arr.length;y++)
{
if(arr[y]>arr[x])
{
k=arr[y];
arr[y]=arr[x];
arr[x]=k;
}
}
}
//将排序后元素按顺序存储在临时集合中
for(int x=0;x<arr.length;x++)
{
newAl.add(arr[x]);
}
return newAl;//返回临时集合
}
}
class Test9
{
public static void main(String[] args)
{
ArrayList<Integer> al = new ArrayList<Integer>();
al.add(5);
al.add(4);
al.add(6);
al.add(8);
al.add(10);
al.add(1);
System.out.print("原数组为:");
Iterator<Integer> it2 = al.iterator();
while(it2.hasNext())
{
System.out.print(it2.next()+" ");
}
System.out.println();//换行作用
System.out.print("按从小到大排序后数组为:");
ArrayList a3=Setarray.minToMax(al);
Iterator<Integer> it = a3.iterator();
while(it.hasNext())
{
System.out.print(it.next()+" ");
}
System.out.println();//换行作用
System.out.print("按从大到小排序后数组为:");
ArrayList a4=Setarray.maxToMin(al);
Iterator<Integer> it1 = a4.iterator();
while(it1.hasNext())
{
System.out.print(it1.next()+" ");
}
}
}
class Setarray
{
//定义方法,作用:使集合中元素从小到大排序
public static ArrayList minToMax(ArrayList tt)
{
//定义一个临时容器。
ArrayList newAl = new ArrayList();
Integer[] arr = tt.toArray(new Integer[tt.size()]);//将集合中元素转换为数组中元素。这句话提醒类型不匹配,为什么呢????????
int k;
//对数组中元素按从小到大排序
for(int x=0;x<arr.length;x++)
{
for(int y=x+1;y<arr.length;y++)
{
if(arr[y]<arr[x])
{
k=arr[y];
arr[y]=arr[x];
arr[x]=k;
}
}
}
//将排序后元素按顺序存储在临时集合中
for(int x=0;x<arr.length;x++)
{
newAl.add(arr[x]);
}
return newAl;//返回临时集合
}
//定义方法,作用:使集合中元素从大到小排序
public static ArrayList maxToMin(ArrayList tt)
{
//定义一个临时容器。
ArrayList newAl = new ArrayList();
Integer[] arr = tt.toArray(new Integer[tt.size()]);//将集合中元素转换为数组中元素
int k;
//对数组中元素按从大到小排序
for(int x=0;x<arr.length;x++)
{
for(int y=x+1;y<arr.length;y++)
{
if(arr[y]>arr[x])
{
k=arr[y];
arr[y]=arr[x];
arr[x]=k;
}
}
}
//将排序后元素按顺序存储在临时集合中
for(int x=0;x<arr.length;x++)
{
newAl.add(arr[x]);
}
return newAl;//返回临时集合
}
}
int k;
//对数组中元素按从大到小排序
for(int x=0;x<arr.length;x++)
{
for(int y=x+1;y<arr.length;y++)
{
if(arr[y]>arr[x])
{
k=arr[y];
arr[y]=arr[x];
arr[x]=k;
}
}
}
//将排序后元素按顺序存储在临时集合中
for(int x=0;x<arr.length;x++)
{
newAl.add(arr[x]);
}
return newAl;//返回临时集合
}
}
|