package com.company;
import sun.misc.Unsafe;
/**
* Created by yellowboy on 2017/3/9.
*/
public class Main3 {
public static void main(String[] args)
throws Exception {
Integer[] a =
new Integer[]{
1,
2,
3,
4,
5,
7,
9,
888,
8,
102};
//给定一个整形数组
final int length = a.
length ;
final Unsafe unsafe = UnsafeUtil.
getUnsafe();
//获取unsafe对象用于分配内存
final long addr[] =
new long[length];
//定义addr数组记录整形数组每个值存储的位置
try {
for(
int i =
0 ;i < length ; i++ )
{
addr[i] = unsafe.allocateMemory(Integer.
SIZE);
//分配一个Integer的大小的内存
unsafe.putInt(addr[i],a[i]);
//把数字放在地址空间上
}
a =
null;
for(
int i =
0 ;i < length ; i++ )
{
System.
out.println(unsafe.getInt(addr[i]));
//输出每个地址空间的值
}
}
finally {
for(
int i =
0 ;i < length ; i++ )
{
unsafe.freeMemory(addr[i]);
//释放每个地址空间
}
}
}
}
转载请注明原文地址: https://ju.6miu.com/read-12878.html