黑马程序员技术交流社区

标题: 数组的12种最佳方法 [打印本页]

作者: 程序爱好者    时间: 2014-4-20 00:39
标题: 数组的12种最佳方法
1.  声明一个数组

Java代码

String[] aArray = new String[5];  
String[] bArray = {"a","b","c", "d", "e"};  
String[] cArray = new String[]{"a","b","c","d","e"};  



2.  输出一个数组

Java代码

int[] intArray = { 1, 2, 3, 4, 5 };  
String intArrayString = Arrays.toString(intArray);  
   
// print directly will print reference value  
System.out.println(intArray);  
// [I@7150bd4d  
   
System.out.println(intArrayString);  
// [1, 2, 3, 4, 5]  



3.  从一个数组创建数组列表


Java代码

String[] stringArray = { "a", "b", "c", "d", "e" };  
ArrayList<String> arrayList = new ArrayList<String>(Arrays.asList(stringArray));  
System.out.println(arrayList);  
// [a, b, c, d, e]  



4.  检查一个数组是否包含某个值


Java代码

String[] stringArray = { "a", "b", "c", "d", "e" };  
boolean b = Arrays.asList(stringArray).contains("a");  
System.out.println(b);  
// true  



5.  连接两个数组

Java代码

int[] intArray = { 1, 2, 3, 4, 5 };  
int[] intArray2 = { 6, 7, 8, 9, 10 };  
// Apache Commons Lang library  
int[] combinedIntArray = ArrayUtils.addAll(intArray, intArray2);  



6.  声明一个内联数组(Array inline)


Java代码

method(new String[]{"a", "b", "c", "d", "e"});  



7.  把提供的数组元素放入一个字符串


Java代码

// containing the provided list of elements  
// Apache common lang  
String j = StringUtils.join(new String[] { "a", "b", "c" }, ", ");  
System.out.println(j);  
// a, b, c  



8.  将一个数组列表转换为数组

Java代码

String[] stringArray = { "a", "b", "c", "d", "e" };  
ArrayList<String> arrayList = new ArrayList<String>(Arrays.asList(stringArray));  
String[] stringArr = new String[arrayList.size()];  
arrayList.toArray(stringArr);  
for (String s : stringArr)  
    System.out.println(s);  



9.  将一个数组转换为集(set)


Java代码

Set<String> set = new HashSet<String>(Arrays.asList(stringArray));  
System.out.println(set);  
//[d, e, b, c, a]  



10.  逆向一个数组

Java代码

int[] intArray = { 1, 2, 3, 4, 5 };  
ArrayUtils.reverse(intArray);  
System.out.println(Arrays.toString(intArray));  
//[5, 4, 3, 2, 1]  



11.  移除数组中的元素

Java代码

int[] intArray = { 1, 2, 3, 4, 5 };  
int[] removed = ArrayUtils.removeElement(intArray, 3);//create a new array  
System.out.println(Arrays.toString(removed));  



12.  将整数转换为字节数组

Java代码

byte[] bytes = ByteBuffer.allocate(4).putInt(8).array();  
   
for (byte t : bytes) {  
   System.out.format("0x%x ", t);  
}  

作者: 天山    时间: 2014-4-20 10:15
给力,学习了
作者: 彭飞    时间: 2014-4-20 14:51
给力
我还准备把自己写的数组的一些排序,最值封装到一个类,供自己调用你呢。
这下可以写到1.2版本了,偷笑。
作者: idream    时间: 2014-4-20 21:03
不错,学习啦
作者: 紫幻随影-缪    时间: 2014-4-20 22:34
大赞!:)
作者: huiyifan    时间: 2015-9-21 22:12
赞................................




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2