Arrays类的十大用法

还有很多地方需要细细斟酌

0. 声明数组

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

1. 打印数组

1 int[] intArray = { 1, 2, 3, 4, 5 };  
2 String intArrayString = Arrays.toString(intArray);  
3    
4 // 直接打印,则会打印出引用对象的Hash值  
5 // [I@7150bd4d  
6 System.out.println(intArray);  
7   
8 // [1, 2, 3, 4, 5]  
9 System.out.println(intArrayString); 

2. 根据数组创建ArrayList

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

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

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

4. 合并连接两个数组

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

5. 声明内联数组

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

6. 用给定的字符串连结(join)数组

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

7. 将ArrayList转换为数组

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

8. 将数组转换为Set

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

9. 数组元素反转

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

10. 移除元素

1 int[] intArray = { 1, 2, 3, 4, 5 };  
2 int[] removed = ArrayUtils.removeElement(intArray, 3);//创建新的数组  
3 System.out.println(Arrays.toString(removed));

更多——转换int值为字节数组

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

 

posted @ 2016-02-13 21:53  xz小郑  阅读(461)  评论(0编辑  收藏  举报