黑马程序员_java入门_数组

来源:互联网 发布:手机数据是什么 编辑:程序博客网 时间:2024/04/30 08:30

------- 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;    }  


 


 

 

原创粉丝点击