10、Java 数组的定义和使用

1

100int

int a = 1 b=2 , c=3.......;

,.,.,

100int System.out.println()100 ~~~


   []  = new [];
   []  = new [];

访[]00 ~ -13使0,1,2访java.lang.ArrayIndexOutOfBoundsException 使 for Java .lengthint

public class ArrayDemo {
public static void main(String args[]) {
int data[] = new int[3]; /*3*/
data[0] = 10; // 
data[1] = 20; // 
data[2] = 30; // 
for(int x = 0; x < data.length; x++) {
System.out.println(data[x]); //
}
}
}

2使

使 For-Each

public class TestArray {
  public static void main(String[] args) {
     double[] myList = {1.9, 2.9, 3.4, 3.5};

     // 
     for (int i = 0; i < myList.length; i++) {
        System.out.println(myList[i] + " ");
    }
     // 
     double total = 0;
     for (int i = 0; i < myList.length; i++) {
        total += myList[i];
    }
     System.out.println("Total is " + total);
     // 
     double max = myList[0];
     for (int i = 1; i < myList.length; i++) {
        if (myList[i] > max) max = myList[i];
    }
     System.out.println("Max is " + max);
  }
}

1.9
2.9
3.4
3.5
Total is 11.7
Max is 3.5

3  (使)

public class ArrayDemo {
public static void main(String args[]) {
//
int data[][] = new int[][] {
{1, 2, 3}, {4, 5}, {6, 7, 8, 9}};
//使
//
for(int i = 0; i < data.length; i++) {
for(int j = 0; j < data[i].length; j++) {
System.out.print("data[" + i + "][" + j + "]=" + data[i][j] + "");
}
System.out.println();
}
}
}

4

 

1 package com.boom0904;
2
3 import java.util.Arrays;
4
5 import javax.sound.sampled.Mixer;
6
7 import com.boom.util.RandomNumber;
8
9 /**
10 * 
11 *
12 * @author Administrator
13 *
14 */
15 public class SortTest {
16
17     public static void main(String[] args) {
18         bubbleSort();
19         //selectSort();
20     }
21
22     private static void selectSort() {
23         int arr[] = RandomNumber.createRandomArray(10, 0, 20);
24         System.out.println(Arrays.toString(arr));
25         selectSort(arr);
26         System.out.println(Arrays.toString(arr));
27     }
28
29     private static void bubbleSort() {
30         int arr[] = RandomNumber.createRandomArray(10, 0, 20);
31         System.out.println(Arrays.toString(arr));
32         bubbleSort(arr);
33         System.out.println(Arrays.toString(arr));
34
35     }
36
37     /**
38     * 
39     *
40     * @param arr
41     * @return
42     */
43     public static void bubbleSort(int[] arr) {
44         for (int i = 0; i < arr.length - 1; i++) { // 
45             // boolean flag = false;
46             for (int j = 0; j < arr.length - i - 1; j++) { // 
47                 // ASC
48                 if (arr[j] > arr[j + 1]) { // arr[j] < arr[j + 1] DESC
49                     // flag = true;
50                     int temp = arr[j];
51                     arr[j] = arr[j + 1];
52                     arr[j + 1] = temp;
53                 }
54             }
55             // if (!flag) {
56             // System.out.println("i==" + i);
57             // break;
58             // }
59         }
60     }
61
62     /**
63     * 
64     *
65     * @param arr
66     */
67     public static void selectSort(int[] arr) {
68         //  
69         // i 
70         for (int i = 0; i < arr.length - 1; i++) {
71             // 
72             int minIndex = i;
73             // 
74             for (int j = i + 1; j < arr.length; j++) {
75                 if (arr[j] < arr[minIndex]) {
76                     minIndex = j;
77                 }
78             }
79             //  i 
80             if (i != minIndex) {// 
81                 int temp = arr[i];
82                 arr[i] = arr[minIndex];
83                 arr[minIndex] = temp;
84             }
85         }
86     }
87
88 }

5

1 package com.boom0904;
2 /**
3 * 
4 */
5 import java.util.Arrays;
6
7 import com.boom.util.RandomNumber;
8
9 public class ArithmeticTest {
10
11     public static void main(String[] args) {
12         // test1();
13         test2();
14     }
15
16     private static void test2() {
17         int[] arr = RandomNumber.createRandomArray(50, 0, 100);
18         Arrays.sort(arr);
19         int index = binarySearch(arr, 99);
20         System.out.println("index=" + index);
21         if (index != -1) {
22             System.out.println(arr[index]);
23         }
24     }
25
26     private static void test1() {
27         int[] arr = RandomNumber.createRandomArray(10, 0, 20);
28         System.out.println(Arrays.toString(arr));
29         System.out.println(indexOf(arr, 9));
30
31     }
32
33     /**
34     *  T(n) = O(n)
35     *
36     * @param arr
37     *            
38     * @param key
39     *           
40     * @return  key arr key  -1
41     */
42     public static int indexOf(int[] arr, int key) {
43         // :0,-1
44         if (arr == null)
45             return -1;
46         int len = arr.length;
47         if (len == 0)
48             return -1;
49
50         for (int i = 0; i < len; i++) {
51             if (arr[i] == key)
52                 return i;
53         }
54         return -1;
55     }
56
57     /**
58     * 
59     *
60     * @param arr
61     *           
62     * @param key
63     *           
64     * @return  key arr key  -1
65     */
66     public static int binarySearch(int[] arr, int key) {
67         // :0,-1
68         if (arr == null)
69             return -1;
70         int len = arr.length;
71         if (len == 0)
72             return -1;
73         int low = 0;
74         int high = len - 1;
75         // 
76         if (key < arr[low] || key > arr[high])
77             return -1;
78
79         int mid = low + high >> 1;
80         int counter = 0;
81         while (high >= low) {
82             counter++;
83             if (arr[mid] == key) {
84                 System.out.println("=" + counter);
85                 return mid;
86             } else if (arr[mid] < key) {// 
87                 low = mid + 1;
88             } else { // 
89                 high = mid - 1;
90             }
91             mid = low + high >> 1;
92         }
93         System.out.println("=" + counter);
94         return -1;
95     }
96

 

97 }

 

 


posted @ 2020-07-20 18:08  发哥讲Java  阅读(278)  评论(0编辑  收藏  举报