数组是一种数据类型,用于存储相同类型的数据。
表示为: int[],String[],...
如: int[] a=new int[n];
String[] b=new String[n];
char[] c={c[0],c[1],....c[n-1]]};
b. 数组中某一个元素表示为:数组名[数组下标],数组长度(数组中有几个元素)表示为:数组 名.lengthb()。数组下标的范围是:0-数组长度-1。
2.数组的遍历:访问数组中的每一个元素。
一般用循环,如:for(int i=0;i<a.length-1;i++){
a[i];
}
3.数据的默认值:
boolean false;
char '_'
整数 0
小数 0.0
引用类 null
4.数组的冒泡排序:相邻两个元素比较,大放后,小的放前。比较length-1遍,第一遍,最大的放在最后,第二遍,第二大的放在倒数第二位,以此类推。利用双重循环,如下:
for(int i=0;i<a.length-1;i++){
for(int j=0;j<a.length-1-i;j++){
if(a[j]>a[j+1]){
int temp =a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
5.二维数组:java中没有二维数组,C语言中有二维数组。java中所谓二维数组,只是元素是一维数组的一维数组。
1.声明:子元素类型[] 数组名;
如 int[][] a 或者 int a[][]
2.对象创建
数组名=new 子元素类型[数组长度][子数组长度]
如: int[][] a=new int[3][2] a.length=3
3.赋值
元素:数组名[数组下标][子数组下标]
课下作业:
7.将一个给定的整型数组转置输出,
例如: 源数组,1 2 3 4 5 6 转置之后的数组,6 5 4 3 2 1
8.现在有如下的一个数组: int oldArr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5}
要求将以上数组中值为0的项去掉,将不为0的值存入一个新的数组,
生成的新数组为: int newArr[]={1,3,4,5,6,6,5,4,7,6,7,5}
9.现在给出两个数组:数组A:“1,7,9,11,13,15,17,19:; 数组b:“2,4,6,8,10” ,两个数组合并为数组c。
10.编写一个程序,求出整数数组中最小元素的下标。如果这样的元素个数大于1,则返回下标最小的数的下标。
{1,2,-2,3,-2}
参考答案(关键代码):
7.
for(int i=1;i<a.length;i++){
for(j = 0;j<a.length-i;j++){
if(a[j]>a[j+1]){
int c=a[j];
a[j]=a[j+1];
a[j+1]=c;
8.
int a=0;
int s=0;
for(int i=0;i<oldArr.length;i++){
if(oldArr[i]!=0){
a=oldArr[i];
s=s+1;
}
int[] newArr= new int[s];
for(int j=0;j<s;j++){
newArr[j]=a;
}
9.
int[] A = {1,7,9,11,13,15,17,19};
int[] B = {2,4,6,8,10};
int[] c= new int[A.length+B.length];
for(i =0;i<(A.length+B.length);i++){
if(i<=A.length-1)c[i]=A[i];
if(i>A.length-1)c[i]=B[i-A.length];
System.out.println(c[i]);
10.
int[] a={1,2,-2,3,-2};
int xiao=a[0];
int i=0;
for(i=0;i<a.length;i++){
if(xiao>=a[i]){
xiao=a[i];
}
}
for(int j=0;j<a.length;j++){
if(a[j]==xiao){
System.out.println(j);
break;