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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

明天该学数组了,哪个大神帮我写一个数组工具类我研究一下,提前预习一下子

6 个回复

倒序浏览


class Arrtool {       
        private Arrtool() {}
        public static void getMax(int[] arr) {
                int max = arr[0];
                for (int i = 1; i < arr.length; i++) {
                        if (max < arr) {
                                max = arr;
                        }
                }
                System.out.println("数组元素最大值:");
                System.out.println("max = " + max);
        }
        public static void printArr(int[] arr) {
                System.out.println("遍历:");
                System.out.print("[");
                for (int i = 0; i < arr.length; i++) {
                        if (i == arr.length - 1) {
                                System.out.print(arr + "]");
                        } else {
                                System.out.print(arr + ", ");
                        }
                }
                System.out.println();
        }
        public static void sortArr(int[] arr) {
                for (int i = 0; i < arr.length - 1; i++) {
                        for (int j = i + 1; j < arr.length; j++) {
                                if (arr > arr[j]) {                        //选择排序;
                                        int temp = arr;
                                        arr = arr[j];
                                        arr[j] = temp;
                                }
                        }
                }
                System.out.print("排序后");
                printArr(arr);
        }
}

回复 使用道具 举报
Tangjw 发表于 2015-9-8 22:23
class Arrtool {       
        private Arrtool() {}
        public static void getMax(int[] arr) {

谢谢 么么哒
回复 使用道具 举报
  1. class  TestDemo
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                  int[] arr = {100, 29, 10, 20, 40, 38, 39};
  6.                  
  7.                  int min = getArrMin(arr);
  8.                  int max = getArrMax(arr);
  9.                  System.out.println("min = "+min+", max = "+max);
  10.                  printArr(arr);
  11.                  int[] xuanze = xuanze(arr);
  12.                  int[] maopao = maopao(arr);
  13.                  printArr(xuanze);
  14.                  printArr(maopao);
  15.         }


  16.         //一个数组获取最大值
  17.         static int getArrMax(int[] arr)
  18.         {
  19.                 int max = 0;
  20.                 for (int i = 1; i < arr.length; i++)
  21.                 {
  22.                         if (arr[max] < arr[i] )
  23.                         {
  24.                                 max = i;
  25.                         }
  26.                 }
  27.                 return arr[max];
  28.         }

  29.     //一个数组获取最小值
  30.         static int getArrMin(int[] arr)
  31.         {
  32.                 int min = 0;
  33.                 for (int i = 1; i < arr.length; i++)
  34.                 {
  35.                         if (arr[min] > arr[i])
  36.                         {
  37.                                 min = i;
  38.                         }
  39.                 }
  40.                 return arr[min];
  41.         }

  42.         //打印数组
  43.         static void printArr(int[] arr)
  44.         {
  45.                 System.out.print("[");
  46.                 for (int i = 0; i < arr.length; i++)
  47.                 {
  48.                         if ( i == arr.length-1 )
  49.                         {
  50.                                 System.out.println(+arr[i]+"]");
  51.                         }
  52.                         else
  53.                                 System.out.print(arr[i]+", ");
  54.                 }
  55.         }

  56.         //选择排序,从小到大排序
  57.         static int[] xuanze(int[] arr)
  58.         {
  59.                 for (int i = 0; i < arr.length; i++)
  60.                 {
  61.                         for (int j = i+1; j < arr.length; j++)
  62.                         {
  63.                                 if (arr[i] > arr[j])
  64.                                 {
  65.                                         change(arr, i, j);
  66.                                          
  67.                                 }
  68.                         }
  69.                 }
  70.                 return arr;
  71.         }
  72.         //冒泡排序,从小到大排序
  73.         static int[] maopao(int[] arr)
  74.         {
  75.                 for (int i = 0; i < arr.length-1; i++)
  76.                 {
  77.                         for (int j = 0; j < arr.length-1-i; j++)
  78.                         {
  79.                                 if (arr[j] > arr[j+1])
  80.                                 {
  81.                                         change(arr, j, j+1);
  82.                                 }
  83.                         }
  84.                 }
  85.                 return arr;
  86.         }
  87.         static void change(int[] arr, int a, int b)
  88.         {
  89.                 int temp = arr[a];
  90.                 arr[a] = arr[b];
  91.                 arr[b] = temp;
  92.         }

  93. }
复制代码
回复 使用道具 举报
数组操作无非就是常见的选择排序和冒泡排序,二分查找以及求最大值和最小值。到了后面用集合比用数组多~~~看了视频还搞不出来么?
回复 使用道具 举报
横创 来自手机 中级黑马 2015-9-11 07:20:55
地板
………………
回复 使用道具 举报
java.util.Arrays提供了很多静态方法
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马