多维数组的使用
package com
.atguigu
.exer
;
public class ArrayExer1 {
public static void main(String
[] args
) {
int[][] arr
= new int[][] {{3,5,8},{12,9},{7,0,6,4}};
int sum
= 0;
for(int i
=0;i
<arr
.length
;i
++) {
for(int j
=0;j
<arr
[i
].length
;j
++) {
sum
+= arr
[i
][j
];
}
}
System
.out
.println(sum
);
}
}
package com
.atguigu
.exer
;
public class YangHuiTest {
public static void main(String
[] args
) {
int[][] yangHui
= new int[10][];
for(int i
=0;i
<yangHui
.length
;i
++) {
yangHui
[i
] = new int[i
+1];
yangHui
[i
][0] = 1;
yangHui
[i
][i
] = 1;
for(int j
=1;j
<yangHui
[i
].length
-1;j
++) {
yangHui
[i
][j
] = yangHui
[i
-1][j
-1] + yangHui
[i
-1][j
];
}
}
for(int i
=0;i
<yangHui
.length
;i
++) {
for(int j
=0;j
<yangHui
[i
].length
;j
++) {
System
.out
.print(yangHui
[i
][j
] + "\t");
}
System
.out
.println();
}
}
}
package com
.atguigu
.java
;
public class ArrayTest1 {
public static void main(String
[] args
) {
int[] arr
= new int[10];
for(int i
=0; i
<10;i
++) {
arr
[i
] = (int)(Math
.random()*(99 - 10 + 1) + 10);
}
for(int i
=0; i
<arr
.length
;i
++) {
System
.out
.print(arr
[i
] + "---");
}
System
.out
.println();
int maxValue
= arr
[0];
for(int i
=1; i
<arr
.length
;i
++) {
if(maxValue
< arr
[i
]) {
maxValue
= arr
[i
];
}
}
System
.out
.println("最大值为:" + maxValue
);
int minValue
= arr
[0];
for(int i
=1; i
<arr
.length
; i
++) {
if(minValue
> arr
[i
]) {
minValue
= arr
[i
];
}
}
System
.out
.println("最小值为:" + minValue
);
int sum
= 0;
for(int i
=0; i
<arr
.length
; i
++) {
sum
+= arr
[i
];
}
System
.out
.println("总和为:" + sum
);
int avgValue
= sum
/arr
.length
;
System
.out
.println("平均数为:" + avgValue
);
}
}
package com
.atguigu
.exer
;
public class ArrayExer2 {
public static void main(String
[] args
) {
int[] array1
, array2
;
array1
= new int[]{2,3,5,7,11,13,17,19};
for(int i
=0; i
<array1
.length
; i
++) {
System
.out
.print(array1
[i
]+"\t");
}
array2
= array1
;
for(int i
=0; i
<array2
.length
;i
++) {
if(i
%2==0) {
array2
[i
] = i
;
}
}
System
.out
.println();
for(int i
=0; i
<array1
.length
;i
++) {
System
.out
.print(array1
[i
] + "\t");
}
}
}
package com
.atguigu
.java
;
public class ArrayTest2 {
public static void main(String
[] args
) {
String
[] arr
= new String[] {"JJ","DD", "BB"};
String
[] arr2
= new String[arr
.length
];
for(int i
=0;i
<arr2
.length
;i
++) {
arr2
[i
] = arr
[i
];
}
for(int i
=0, j
=arr
.length
-1;i
<j
;i
++,j
--) {
String temp
= arr
[i
];
arr
[i
] = arr
[j
];
arr
[j
] = temp
;
}
for(int i
=0;i
<arr
.length
;i
++) {
System
.out
.print(arr
[i
] + "\t");
}
System
.out
.println();
String dest
= "CC";
boolean isFlag
= true;
for(int i
=0; i
<arr
.length
; i
++) {
if(dest
.equals(arr
[i
])) {
System
.out
.println("找到了指定的元素,位置为:"+i
);
isFlag
= false;
break;
}
}
if(isFlag
) {
System
.out
.println("很遗憾,没有找到!");
}
int[] arr3
= new int[] {-98, -34, 2, 6, 8, 88,190};
int dest1
= -34;
dest1
= 34;
int head
= 0;
int end
= arr3
.length
- 1;
boolean isFlag1
= true;
while(head
<= end
) {
int middle
= (head
+ end
)/2;
if(dest1
== arr3
[middle
]) {
System
.out
.println("找到了指定的元素,位置为:"+middle
);
isFlag1
= false;
break;
}else if(arr3
[middle
] > dest1
) {
end
= middle
- 1;
}else {
head
= middle
+ 1;
}
}
if(isFlag
) {
System
.out
.println("很遗憾,没有找到!");
}
}
}
package com
.atguigu
.java
;
public class BubnleSortTest {
public static void main(String
[] args
) {
int[] arr
= new int[] {43, 32,76, -98, 0, 64, 33,43};
for(int i
=0; i
<arr
.length
-1; i
++) {
for(int j
=0; j
<arr
.length
-1-i
; j
++) {
if(arr
[j
] > arr
[j
+1]) {
int temp
= arr
[j
];
arr
[j
] = arr
[j
+ 1];
arr
[j
+ 1] = temp
;
}
}
}
for(int i
=0; i
<arr
.length
;i
++) {
System
.out
.print(arr
[i
] + "\t");
}
}
}
Arrays工具类的使用
package com
.atguigu
.java
;
import java
.util
.Arrays
;
public class ArraysTest {
public static void main(String
[] args
) {
int[] arr1
= new int[] {1,2,3,4};
int[] arr2
= new int[] {1,2,4,2};
boolean isEquals
= Arrays
.equals(arr1
, arr2
);
System
.out
.println(isEquals
);
System
.out
.println(Arrays
.toString(arr1
));
Arrays
.fill(arr1
, 10);
System
.out
.println(Arrays
.toString(arr1
));
Arrays
.sort(arr2
);
System
.out
.println(Arrays
.toString(arr2
));
int index
= Arrays
.binarySearch(arr2
, 210);
if(index
>= 0) {
System
.out
.println(index
);
}else {
System
.out
.println("未找到");
}
}
}
数组使用中的常见异常
1、数组角标越界的异常,ArrayIndexOutOfBoundsException2、空指针异常,NullPointerException
转载请注明原文地址: https://lol.8miu.com/read-23796.html