JAVA中的数组没有动态的
要是想用动态的数据结构就用向量Vector
采用Vector
import javauntilVector;
例如:
Vector vet==new Vector();
String str="test1";
double t1=0124;
vetadd(str);
vetadd(StringvalueOf(t1));
可以用 vetsize()获取其大小。
通过vetget(i);获取第i个元素(i从0开始),类型为Object,转换一下就可以了。
具体可以查看jdk api文档
java数组是java原生支持的,本质是由底层c支持的,你可以从jdk安装路径下include下的jnih中得到一点点启发, 有一个函数GetArrayLength用来支持获取数组长度 如果你想看源码,可以下载一个openJDK
自己写的话,可以用冒泡或者选择排序:
都是从大到小的
冒泡:
int[] arr=new int[]{34,5,23,38,1,89,54,78,9,7};
int temp=0;
for(int i=arrlength-1;i>0;i--){
for(int j=arrlength-1;j>0;j--){
if(arr[j]>arr[j-1]){
temp=arr[j];
arr[j]=arr[j-1];
arr[j-1]=temp;
}
}
}
for(int i=0;i<arrlength;i++){
Systemoutprintln(arr[i]);
}
选择排序:
int[] arr=new int[]{34,5,23,38,1,89,54,78,9,7};
int temp=0;
for(int i=0;i<arrlength-1;i++){
for(int j=i+1;j<arrlength;j++){
if(arr[j]>arr[i]){
temp=arr[j];
arr[j]=arr[i];
arr[i]=temp;
}
}
}
for(int i=0;i<arrlength;i++){
Systemoutprintln(arr[i]);
}
当然,也可以用Arrayssort(arr)的方法排序,这种默认是从小到大排序的。
你可以试一下。
在java中只有8中基本类型。数组,类,接口,都是引用类型 你可能只是定义int arr[ ] 其实也可以定以object arr[ ]这样的数组 数组中没有arraylength()方法,只有length属性可以这样用 arraylength
以上就是关于Java的数组都是大小固定的,有没有动态数组全部的内容,包括:Java的数组都是大小固定的,有没有动态数组、java 为什么数组名.length就能获取数组的长度、java 比较数组中数值大小等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)