概述
---------------------- android培训、java培训、期待与您交流! -----------------------
最近我看了几天的数组视频,受益匪浅。我知道了如果遍历数组,还有数组的排序,以及数组的静态应用。下面就我对数组的了解记录一下我的心得。
一:数组的遍历:数组是一个集合,遍历数组是为了得到数组中的值,遍历数组也必用到了循环结构,根据角标可以取到数组中的任意值。
我写的一个遍历数组的小程序:
class ArrayTest
{
public static void main(String[] args)
{
int[] arr={1,5,3,6,7,9};
ArrayTest1(arr);
}
public static void ArrayTest1(int[] arr){
System.out.print("[");
for(int i=0;i<arr.length;i++)
{
if(i<arr.length-1){
System.out.print(arr[i]+",");
}
else{
System.out.print(arr[i]);
}
}
System.out.println("]");
}
}
二:数组的排序:数组的排序方法有很多,在此我写一下选择排序和冒泡排序。
class ArrayTool
{
/*public static void main(String args[])
{
int[] arr={3,4,10,8};
int min=getMin(arr);
System.out.println("min="+min);
}
*/
//private ArrayTool(){}
public static int getMin(int[] arr)
{
int min=0;
for(int x=1;x<arr.length;x++)
{
if(arr[x]<arr[min])
min=x;
}
return arr[min];
}
public void selectSort(int[] arr)
{
for(int i=0;i<arr.length-1;i++)
{
for(int j=i+1;j<arr.length;j++)
{
if(arr[i]>arr[j])
{
swap(arr,i,j);
}
}
}
}
public static void bubbleSort(int[] arr)
{
for(int i=0;i<arr.length-1;i++)
{
for(int j=0;j<arr.length-i-1;j++)
{
if(arr[j]>arr[j+1])
{
swap(arr,j,j+1);
}
}
}
}
private static void swap(int[] arr,int a,int b)
{
int temp=arr[a];
arr[a]=arr[b];
arr[b]=temp;
}
public static void printArray(int[] arr)
{
System.out.print("[");
for(int i=0;i<arr.length;i++)
{
if(i!=arr.length-1)
{
System.out.print(arr[i]+",");
}
else
{
System.out.println(arr[i]+"]");
}
}
}
}
/*
class ArrayTool
{
public static void main(String args[])
{
int[] arr={3,4,10,8};
int max=getMax(arr);
System.out.println("max="+max);
}
public static int getMax(int[] arr)
{
int max=0;
for(int x=1;x<arr.length;x++)
{
if(arr[x]>arr[max])
max=x;
}
return arr[max];
}
}
*/
其中数组的静态应用特性有:
每一个应用程序中都有共性的功能,可以将这些功能进行抽取,独立封装,以便复用。
虽然可以通过建立ArrayTool的对象使用这些工具方法,对数组进行操作。
发现的问题:
1:对象是用于封装数据的,可是ArrayTool对象并未封装特有数据
2:操作数组的每一个方法都没有用到ArrayTool对象中的特有数据
这时就考虑,让程序更严谨,是不需要对象的,
可以将ArrayTool中的方法都定义成static的,直接通过类名调用即可。
将方法都静态后,可以方便于使用,但是该类还是被其他程序建立对象的。
为了更加严谨,强制让该类不能建立对象。
可以将通过构造函数私有化完成。
--------------------- android培训、java培训、期待与您交流! ----------------------
最后
以上就是冷静心情为你收集整理的黑马程序员:我的黑马预习课程第一讲:数组的全部内容,希望文章能够帮你解决黑马程序员:我的黑马预习课程第一讲:数组所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复