A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 wyf20106 于 2014-8-15 15:57 编辑
  1. /*
  2. 静态的应用:
  3. 每一个应用程序中都有共性的功能,
  4. 可以将这些功能进行抽取,独立封装。
  5. 以便复用。

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

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

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

  15. 接下来,将ArrayTool.class文件发送给其他人,其他人只要将该文件设置到classpath路径下,就可以使用该工具类。
  16. 但是,很遗憾,该类中到底定义了多少个方法,对方并不清楚,因为该类并没有使用说明书。
  17. 开始制作程序的说明书。java的说明书通过文档注释来完成。

  18. */

  19. /**
  20. 这是一个可以对数组进行操作的工具类,该类中提供了,获取最值,排序等功能。
  21. @author 张三
  22. @version V1.1
  23. */
  24. public class ArrayTool
  25. {
  26.         /**
  27.         空参数构造函数。
  28.         */
  29.          private ArrayTool(){}
  30. /**
  31. 获取一个整形数组中的最大值。
  32. @param arr 接收一个int类型的数组。
  33. @return 会返回一个该数组中最大值。
  34. */
  35.         public static int getMax(int[] arr)
  36.         {
  37.                 int max = 0;
  38.                 for (int x=1;x<arr.length ;x++ )
  39.                 {
  40.                         if(arr[x]>arr[max])
  41.                                 max = x;
  42.                 }
  43.                 return arr[max];
  44.                 }
  45.                 /**
  46. 获取一个整形数组中的最小值。
  47. @param arr 接收一个int类型的数组。
  48. @return 会返回一个该数组中最小值。
  49. */
  50.                 public  int getMin(int[] arr)
  51.                 {
  52.                         int min = 0;
  53.                         for (int x=1;x<arr.length ;x++ )
  54.                 {
  55.                         if(arr[x]<arr[min])
  56.                                 min = x;
  57.                 }
  58.                 return arr[min];
  59.                 }
  60.                 /**
  61.                 给int数组进行选择排序
  62.                 @param arr 接收一个int类型的数组。
  63.                 */
  64.                 public  void selectSort(int[] arr)
  65.                 {
  66.                         for (int x=0;x<arr.length-1 ;x++ )
  67.                         {
  68.                                 for (int y=x+1;y<arr.length ;y++ )
  69.                                 {
  70.                                         if (arr[x]>arr[y])
  71.                                         {
  72.                                                 swap(arr,x,y);

  73.                                         }
  74.                                 }
  75.                         }
  76.                 }
  77.                 /**
  78.                 给int数组进行冒泡排序
  79.                 @param arr 接收一个int类型的数组。
  80.                 */
  81.                 public static void bubbleSort(int[] arr)
  82.                 {
  83.                         for (int x=0;x<arr.length -1;x++ )
  84.                         {
  85.                                 for(int y=0;y<arr.length-x-1;y++)
  86.                                 {
  87.                                         if(arr[y]>arr[y+1]);
  88.                                         {
  89.                                                 swap(arr,y,y+1);
  90.                                         }
  91.                                 }
  92.                         }
  93.                 }
  94.                 /**
  95.                 给数组中元素进行位置的置换
  96.                 @param arr 接收一个int类型的数组。
  97.                 @param a 要置换的位置
  98.                 @param b 要置换的位置

  99.                 */
  100.                 private static void swap(int[] arr, int a,int b)
  101.                 {
  102.                         int temp = arr[a];
  103.                         arr[a] = arr[b];
  104.                         arr[b] = temp;
  105.                 }
  106.                 /**
  107.                 用于打印数组中的元素。打印形式是:[element1,element2, ...]
  108.                 */
  109.                 public static void printArray(int[] arr)
  110.                 {
  111.                         System.out.print("[");
  112.                         for (int x=0;x<arr.length ;x++ )
  113.                         {
  114.                                 if (x!=arr.length-1)
  115.                                         System.out.print(arr[x]+", ");
  116.                                 else
  117.                                         System.out.println(arr[x]+"]");
  118.                                 
  119.                         }
  120.                 }

  121. }

  122. /*
  123. 一个类中默认会有一个空参数的构造函数,
  124. 这个默认的构造函数的权限和所属类一致
  125. 如果类被public修饰,那么默认的构造函数也带public修饰符。
  126. 如果类没有被public修饰,那么默认的构造函数,也没有public修饰。

  127. 默认构造函数的权限是随着类的变化而变化的。
  128. */

  129. /*
  130. class  Demo
  131. {
  132.         public static void main(String[] args)
  133.         {
  134.                
  135.                 int[] arr = {3,4,1,8};
  136.                 /*
  137.                 int max = 0;
  138.                 for (int x =1;x<arr.length ;x++ )
  139.                 {
  140.                         if (arr[x]>arr[max])
  141.                                 max = x;
  142.                         
  143.                 }
  144.                 */
  145.         /*
  146.                 int max = getMax(arr);
  147.                 System.out.println("max="+arr[max]);
  148.         }
  149.         public static int getMax(int[] arr)
  150.         {
  151.                 int max = 0;
  152.                 for (int x =1;x<arr.length ;x++ )
  153.                 {
  154.                         if(arr[x]>arr[max])
  155.                                 max = x;
  156.                 }
  157.                 return arr[max];
  158.         }

  159. }
  160. class Test
  161. {
  162.         public static int getMax(int[] arr)
  163.         {
  164.                 int max = 0;
  165.                 for (int x =1;x<arr.length ;x++ )
  166.                 {
  167.                         if(arr[x]>arr[max])
  168.                                 max = x;
  169.                 }
  170.                 return arr[max];
  171. }
  172. */
复制代码


图片1.png (88.41 KB, 下载次数: 23)

楼主笨 实在不知道怎么弄了 没有自动生成myhelp文件夹

楼主笨 实在不知道怎么弄了 没有自动生成myhelp文件夹

图片2.png (169.77 KB, 下载次数: 22)

直接生成到这里了,不过打开了也能看

直接生成到这里了,不过打开了也能看

图片3.png (111.56 KB, 下载次数: 20)

求帮忙~~解决这个问题

求帮忙~~解决这个问题

1 个回复

倒序浏览
留个标记....
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马