黑马程序员_java入门_数组

------- android培训java培训、期待与您交流! ----------

 

一.数组的定义

数组属于引用数据类型,是一个容器

数组声明的格式

int[] x=new int[3];//创建一个新数组,里面存三个元素

int x[]=new int[3];

一般用第一个,一目了然就知道是一个数组

 

初始化数组

int[] arr=new int[]{1,2,3,4}(静态初始化)

简化形式 int[] arr={1,2,3,4};

注意事项:1声明一个数组不是创建一个对象

2.创建时一定要指定数组长度,不指定也要输入内容

3.数组存放于堆内存中,他是new出来的

4.创建的实体不被使用后,JAVA有自动回收机制

 

二数组的应用

1.遍历数组

for(int x=0;x<arr.length;x++)  
        {  
            if(x!=arr.length-1)  
                System.out.print(arr[x]+",");  
            else  
                System.out.print(arr[x]);  
       }  

2.获取最大值

int max=0;
for(int i=1;i<arr.length;i++)
{
   	if(arr[i]>arr[max])
	  max=i;
}
System.out.println(arr[max]);

3.选择排序法

for(int x=0;x<arr.length;x++)
{
	for(int y=x+1;y<arr.length;y++)
		{
			if(arr[y]>arr[x])
			{
				int temp=arr[y];
					arr[y]=arr[x];
					arr[x]=temp;
			}
		}



}


4.冒泡法

 

for(int x=0;x<arr.length;x++)
{
	for(int y=0;y<arr.length-x;y++)
	{
		if(arr[y]>arr[y+1])
		int temp=arr[y];
		art[y]=arr[y+1];
		arr[y+1]=temp;
	}

}

5.折半查找


public static int halfSearch(int[] arr,int key)
  {  
    int min,max,mid;  
     min=0;  
     max=arr.length-1;  
   mid=(max+min)/2;  
  while(arr[mid]!=key)  
 {  
      if(key>arr[mid])  
	{     
             min=mid+1;  
         }  
    else if(key<arr[mid])  
        {  
             max=mid-1;  
}  
       if(min>max)  
           return -1;  
        mid=(max+min)/2;  
 }  
       return mid;  
  }  


 


 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值