jni jbytearray使用 java中分配空间 java怎么给数组分配空间
转载
一、分配空间与赋值分步进行
分配空间与赋值分步进行
public class HelloWorld {
public staticvoid main(String[] args) {
int[] a = newint[5]; //分配了长度是5的数组,但是没有赋值
//没有赋值,那么就会使用默认值
//作为int类型的数组,默认值是0
System.out.println(a[0]);
//进行赋值
a[0] = 100;
a[1] = 101;
a[2] = 103;
a[3] = 120;
a[4] = 140;
}
}
|
二、分配空间,同时赋值
分配空间,同时赋值
public class HelloWorld {
public staticvoid main(String[] args) {
//写法一: 分配空间同时赋值
int[] a = newint[]{100,102,444,836,3236};
//写法二: 省略了new int[],效果一样
int[] b = {100,102,444,836,3236};
//写法三:同时分配空间,和指定内容
//在这个例子里,长度是3,内容是5个,产生矛盾了
//所以如果指定了数组的内容,就不能同时设置数组的长度
int[] c = newint[3]{100,102,444,836,3236};
}
}
|
三、练习--数组反转
题目:
首先创建一个长度是5的数组,并填充随机数。 (向数组填充随机数的办法,参考这里)
参考:使用for循环或者while循环,对这个数组实现反转效果
官方答案:
public class HelloWorld {
public staticvoid main(String[] args) {
int[] a = newint[5];
int) (Math.random() * 100);
int) (Math.random() * 100);
int) (Math.random() * 100);
int) (Math.random() * 100);
int) (Math.random() * 100);
"数组中各个值是:");
forint i = 0; i < a.length; i++)
" ");
/*思路一: 使用临时数组*/
System.out.println();
//准备临时数组
int[] temp = newint[a.length];
//把原数组的内容复制给临时数组
forint i = 0; i < temp.length; i++) {
temp[i] = a[i];
}
"临时数组中的各个值是:");
forint i = 0; i < temp.length; i++)
" ");
System.out.println();
//反转的做法是把临时数组的数据,挨个 倒 放入 原数组中
forint i = 0; i < temp.length; i++) {
a[i] = temp[temp.length-1-i];
}
"反转后的数组中各个值是:");
forint i = 0; i < a.length; i++)
" ");
System.out.println();
/*思路二: 进行首尾调换*/
forint i = 0; i < a.length/2; i++) {
int middle = a[a.length-i-1];
a[a.length-i-1] = a[i];
a[i] = middle;
}
"再次反转后的数组中各个值是:");
forint i = 0; i < a.length; i++) {
" ");
}
System.out.println();
}
}
|
本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。