服务器之家

服务器之家 > 正文

Java中动态地改变数组长度及数组转Map的代码实例分享

时间:2020-04-11 14:37     来源/作者:Ai2015WER

动态改变数组的长度

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/** * Reallocates an array with a new size, and copies the contents 
 * * of the old array to the new array. 
 * * @param oldArray the old array, to be reallocated. 
 * * @param newSize  the new array size. 
 * * @return     A new array with the same contents. 
 * */
private static Object resizeArray (Object oldArray, int newSize) {   
  int oldSize = java.lang.reflect.Array.getLength(oldArray);   
  Class elementType = oldArray.getClass().getComponentType();   
  Object newArray = java.lang.reflect.Array.newInstance(      
      elementType,newSize);   
  int preserveLength = Math.min(oldSize,newSize);   
  if (preserveLength > 0)     
    System.arraycopy (oldArray,0,newArray,0,preserveLength);   
  return newArray;  }   
// Test routine for resizeArray().  
public static void main (String[] args) {   
  int[] a = {1,2,3};   
  a = (int[])resizeArray(a,5);   
  a[3] = 4;   
  a[4] = 5;   
  for (int i=0; i<a.length; i++)     
    System.out.println (a[i]);  
}

代码只是实现基础方法,详细处理还需要你去Coding哦>>

把 Array 转换成 Map

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import java.util.Map;  
import org.apache.commons.lang.ArrayUtils;   
public class Main {    
  public static void main(String[] args) {    
    String[][] countries = { { "United States", "New York" }, 
        { "United Kingdom", "London" },      
        { "Netherland", "Amsterdam" }, 
        { "Japan", "Tokyo" }, 
        { "France", "Paris" } };     
    Map countryCapitals = ArrayUtils.toMap(countries);     
    System.out.println("Capital of Japan is " + countryCapitals.get("Japan"));    
    System.out.println("Capital of France is " + countryCapitals.get("France"));   
}  
}
标签:

相关文章

热门资讯

沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意 2019-07-07
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
超A是什么意思 你好a表达的是什么
超A是什么意思 你好a表达的是什么 2019-06-06
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
返回顶部