数组是效率最高的保存一组对象的方式,它是你的第一选择。而且如果要保存基本类型,则只能用数组。
如果在程序运行的时候不知道会需要创建多少对象的话,那么建议还是用容器。一个Arrays操作数组的小例子
package com.lihan;
import java.util.*;
public class Test {
/**
* @param args
* @author 李晗
* 主要写一下Arrays 的fill(),sort(),equals(),binarySearch,System.arraycopy()操作数组
*/
// 添加随机元素
public void addElement(int[] j)
{
Random rand=new Random();
//Arrays.fill(j, rand.nextInt(5));
for(int i=0;i<j.length;i++)
{
j[i]=rand.nextInt(10);
}
}
// 排序元素
public int[] sortElement(int[] j)
{
Arrays.sort(j);//如果是倒排序的话,那么Arrays.sort(j,Collections.reversOrder)前提必须对象数组Integer[]
return j;
}
// 访问元素
public String findElement(int[] j,int f)
{
if(Arrays.binarySearch(j,f )<0)
{
return "该元素不存在!";
}
else return "元素位置:"+Arrays.binarySearch(j,f );
}
// 复制数组
public void copyElement(int[] j,int[] k)
{
System.arraycopy(j,0,k,0,k.length);//用System.arraycopy复制数组要比for循环快很多
}
// 打印数组
public void toString(int[] j)
{
for(int i=0;i<j.length;i++)
{
System.out.print(j[i]+" ");
}
System.out.println();
}
// 判断两个数组是否相等
public boolean isEquals(int[] j,int[] k)
{
return Arrays.equals(j, k);
}
public static void main(String[] args) {
int[] j=new int[7];
int[] k=new int[7];
Test t=new Test();
t.addElement(j);
t.toString(j);
t.copyElement(j, k);//复制元素到K
t.toString(k);
System.out.println("是否相等:"+t.isEquals(j, k));//判断是否相等
System.out.print("排序后:");
t.toString(t.sortElement(j));
System.out.println("是否相等:"+t.isEquals(j, k));//判断是否相等
System.out.println(t.findElement(j, 6));
}
}
运行情况:
3 0 6 4 1 0 0
是否相等:true
排序后:0 0 0 1 3 4 6
是否相等:false
元素位置:6
本文介绍了一个使用Java进行数组操作的例子,包括填充、排序、查找、复制和比较数组等常见操作。
3718

被折叠的 条评论
为什么被折叠?



