package day3;
class test01{
public static void main(String args[])
{
//静态定义
int[] arr = {23,4,67,198,3};
//动态
int arr2 [] = new int[10];
int[] arr3 = new int[]{1,3,5,7};//{1,3,5,7,0,0,0,0,0,0}
//数组的访问
int num3 = arr[2];
System.out.println(num3);
System.out.println(arr2[4]);
//为数组的元素赋值
arr2[2] = 500;
System.out.println(arr2[2]);
//获得数组的长度,每个数组都有一个固定的属性是length
int len = arr2.length;
System.out.println("数组arr2的长度为:" + len);
//遍历数组的元素,将元素依次取出来打印
for(int i=0; i<arr.length; i++)
//System.out.println(i);
System.out.println(arr[i]);
/*如果数组为null,那么在访问时会抛java.lang.NullPointerException空指针异常
int[] arr4 = null;
System.out.println(arr4.length);
*/
//访问数组时注意,角标的取值范围为0~length-1,
//超出这个范围就会抛 java.lang.ArrayIndexOutOfBoundsException角标越界异常
//System.out.println(arr[5]);
//System.out.println(arr);
System.out.println("-----------------------------------");
arr = new int[]{-4,-15,-89,-27};
listArr(arr);
int max = getMaxNum(arr);
System.out.println("arr中的最大数为:" + max);
System.out.println("-----------------------------------");
System.out.println("交换前:");
listArr(arr);
exchange(arr, 0, 2);
System.out.println("交换后:");
listArr(arr);
}
//遍历数组的元素,输出
static void listArr(int[] arr)
{
//定义一个容器StringBuffer
StringBuffer sb = new StringBuffer();
for(int i=0; i<arr.length; i++)
sb.append(arr[i]+",");
sb.delete(sb.length()-1, sb.length());
System.out.println(sb);
}
/*求一个数组中的最大数
思路:
1.定义一个变量max用于记住最大数,初始值为第一个元素
2.遍历数组,让每个元素都和max比较,如果比max大,将该元素的值给max
3.返回max
*/
static int getMaxNum(int[] arr)
{
int max = arr[0];
for(int i=1; i<arr.length; i++)
{
if(arr[i]>max)
max = arr[i];
}
return max;
}
/* 交换数组的两个元素
1.定义一个临时变量temp,值为pos1位置的元素
2.让pos1位置的元素的值等于pos2位置的元素
3.让pos2位置的元素的值等于temp
*/
static void exchange(int[] arr, int pos1, int pos2)
{
int temp = arr[pos1];
arr[pos1] = arr[pos2];
arr[pos2] = temp;
}
}
day3 test01
最新推荐文章于 2021-07-18 12:00:12 发布