我是靠谱客的博主 冷静心情,最近开发中收集的这篇文章主要介绍黑马程序员:我的黑马预习课程第一讲:数组,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

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

 

 最近我看了几天的数组视频,受益匪浅。我知道了如果遍历数组,还有数组的排序,以及数组的静态应用。下面就我对数组的了解记录一下我的心得。

一:数组的遍历:数组是一个集合,遍历数组是为了得到数组中的值,遍历数组也必用到了循环结构,根据角标可以取到数组中的任意值。

       我写的一个遍历数组的小程序:

class  ArrayTest
{
 public static void main(String[] args)
 {
       int[] arr={1,5,3,6,7,9};
       ArrayTest1(arr);
 
 }

 public static void ArrayTest1(int[] arr){
 
        System.out.print("[");
    for(int i=0;i<arr.length;i++)
  {
      if(i<arr.length-1){
    System.out.print(arr[i]+",");
   }
   else{
    System.out.print(arr[i]);
    
     }

    }
        System.out.println("]");
 }
}


二:数组的排序:数组的排序方法有很多,在此我写一下选择排序和冒泡排序。

class ArrayTool
{
   /*public static void main(String args[])
   {
       int[] arr={3,4,10,8};
      
       int min=getMin(arr);
      
       System.out.println("min="+min);
     }
     */
    
     //private ArrayTool(){}
    public static int getMin(int[] arr)
    {
      int min=0;
       for(int x=1;x<arr.length;x++)
       { 
         if(arr[x]<arr[min])
          min=x;
       }
       return arr[min];
    }
  
    public void selectSort(int[] arr)
    {
      for(int i=0;i<arr.length-1;i++)
        {
           for(int j=i+1;j<arr.length;j++)
           {
              if(arr[i]>arr[j])
              {
                 swap(arr,i,j);
               }
            }
        }
    }
   
    public static void bubbleSort(int[] arr)
    {
      for(int i=0;i<arr.length-1;i++)
      {
       for(int j=0;j<arr.length-i-1;j++)
       {
         if(arr[j]>arr[j+1])
         {
          swap(arr,j,j+1);
         }
       } 
   }
}
   private static void swap(int[] arr,int a,int b)
   {
      int temp=arr[a];
      arr[a]=arr[b];
      arr[b]=temp;
    }
   
  public static void printArray(int[] arr)
  {
   System.out.print("[");
   for(int i=0;i<arr.length;i++)
   {
      if(i!=arr.length-1)
      {
       System.out.print(arr[i]+",");
     }
       else
       {
        System.out.println(arr[i]+"]");
        }
   }
  }
}
/*
class ArrayTool
{
   public static void main(String args[])
   {
       int[] arr={3,4,10,8};
      
       int max=getMax(arr);
      
       System.out.println("max="+max);
     }
    public static int getMax(int[] arr)
    {
      int max=0;
       for(int x=1;x<arr.length;x++)
       { 
       
         if(arr[x]>arr[max])
          max=x;
       }
       return arr[max];
   }
}
*/

其中数组的静态应用特性有:

每一个应用程序中都有共性的功能,可以将这些功能进行抽取,独立封装,以便复用。

虽然可以通过建立ArrayTool的对象使用这些工具方法,对数组进行操作。
发现的问题:
1:对象是用于封装数据的,可是ArrayTool对象并未封装特有数据
2:操作数组的每一个方法都没有用到ArrayTool对象中的特有数据

这时就考虑,让程序更严谨,是不需要对象的,
可以将ArrayTool中的方法都定义成static的,直接通过类名调用即可。

将方法都静态后,可以方便于使用,但是该类还是被其他程序建立对象的。
为了更加严谨,强制让该类不能建立对象。
可以将通过构造函数私有化完成。

 

 

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

最后

以上就是冷静心情为你收集整理的黑马程序员:我的黑马预习课程第一讲:数组的全部内容,希望文章能够帮你解决黑马程序员:我的黑马预习课程第一讲:数组所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(87)

相关文章

黑马程序员——数组排序------- <a href=android培训java培训、期待与您交流! ---------- /*  * 数组排序:  * 冒泡排序  * 选择排序  * 二分法查找:从一个数组中查找一个指定的数,(并返回其索引值)前提:数组必须排好序!  */ public class D" class="embed-responsive-item">
黑马程序员——数组排序------- android培训java培训、期待与您交流! ---------- /*  * 数组排序:  * 冒泡排序  * 选择排序  * 二分法查找:从一个数组中查找一个指定的数,(并返回其索引值)前提:数组必须排好序!  */ public class D

评论列表共有 0 条评论

立即
投稿
返回
顶部