黑马程序员技术交流社区

标题: arraytest.java:105: 需要为 class、interface 或 enum是什么意思? [打印本页]

作者: 欧阳才志    时间: 2012-4-10 14:45
标题: arraytest.java:105: 需要为 class、interface 或 enum是什么意思?
/*
功能:封装一下数组的常用功能
时间:4.10

*/
class  arraytest
{
        private arraytest()
        {
        }
        public static int getmax(int [] arr)
                /**
        获取一个整形数组的最大值
        @param arr接收一个int类型的数组
        @return 会返回一个数组中最大值
        */
        {
                int max=0;
                for(int x=1;x<arr.length;x++)
                {
                        if(arr[x]>arr[max])
                                max=x;
                }
                return arr[max];
        }
        public int getmin(int [] arr)
                        /**
        获取一个整形数组的最小值
        @param arr接收一个int类型的数组
        @return 会返回一个数组中最小值
        */
        {
                int min=0;
                for(intx=1;x<arr.length;x++)
                {
                        if (arr[x]<arr[min])
                        {
                                min=x;
                        }
                }
                return arr[min];
        }
        /**
        给int数组进行选择法排序
    @param arr接收一个int类型的数组
        */
    public void selectsort(int [] arr)
                for(int x=0;x<arr.length-1;x++)
            {
                        for(int y=x+1;y<arr.length;y++)
                        {
                                if(arr[x]>arr[y])
                                {
                                        swap(arr,x,y);
                                }
                        }
             }
                 /**
        给int数组进行冒泡法排序
    @param arr接收一个int类型的数组
        */
                 public void bubblesort(int [] arr)
            {
                         for(int x=0;x<arr.length-1;x++)
                        {
                                 for(int y=0;y<arr.length-x-1;y++)
                                {
                                         if(arr[y]>arr[y+1])
                                        {
                                                swap(arr,y,y+1);
                                         }
                                 }
                         }
                 }
                          /**
        给两个元素进行位置置换
    @param arr接收一个int类型的数组
        @param a 要置换的位置
        @param b 要置换的位置
        */
                private static void swap(int [] arr,int a,int b)
            {
                        int temp=arr[a];
                        arr[a]=arr[b];
                        arr[b]=temp;
                }
                /**
                打印数组元素
                @param arr 接收一个int数组
                */
                public static void printarray(int [] arr)
           {
                        System.out.print("[");
                        for(int x=0;x<arr.length;x++)
                   {
                                if(x!=arr.length-1)
                                        System.out.print(arr[x]+",")
                                else
                                        System.out.println(arr[x]+"]");
                        }
                }
}
  我就写了这样一个类,然后编译的时候就很读错,都是arraytest.java:105: 需要为 class、interface 或 enum,是什么原因?
作者: 郑强强    时间: 2012-4-10 15:18
class  ArrayTest
{
        private ArrayTest()
        {
        }
        public static int getMax(int [] arr)
                /**
        获取一个整形数组的最大值
        @param arr接收一个int类型的数组
        @return 会返回一个数组中最大值
        */
        {
                int max=0;
                for(int x=1;x<arr.length;x++)
                {
                        if(arr[x]>arr[max])
                                max=x;
                }
                return arr[max];
        }
        public int getMin(int [] arr)
                        /**
        获取一个整形数组的最小值
        @param arr接收一个int类型的数组
        @return 会返回一个数组中最小值
        */
        {
                int min=0;
                for(int x=1;x<arr.length;x++)
                {
                        if (arr[x]<arr[min])
                        {
                                min=x;
                        }
                }
                return arr[min];
        }
        /**
        给int数组进行选择法排序
    @param arr接收一个int类型的数组
        */
       public void selectSort(int [] arr)    //这地方你的大括号用错了
    {
                                 for(int x=0;x<arr.length-1;x++)
                                   {
                        for(int y=x+1;y<arr.length;y++)
                        {
                                if(arr[x]>arr[y])
                                {
                                        swap(arr,x,y);
                                }
                        }
                  }
                }
                 /**
        给int数组进行冒泡法排序
    @param arr接收一个int类型的数组
        */
                 public void bubbleSort(int [] arr)
            {
                         for(int x=0;x<arr.length-1;x++)
                        {
                                 for(int y=0;y<arr.length-x-1;y++)
                                {
                                         if(arr[y]>arr[y+1])
                                        {
                                                swap(arr,y,y+1);
                                         }
                                 }
                         }
                 }
                          /**
        给两个元素进行位置置换
    @param arr接收一个int类型的数组
        @param a 要置换的位置
        @param b 要置换的位置
        */
                private static void swap(int [] arr,int a,int b)
                {
                        int temp=arr[a];
                        arr[a]=arr;
                        arr=temp;
                }
                /**
                打印数组元素
                @param arr 接收一个int数组
                */
                public static void printArray(int [] arr)
           {
                        System.out.print("[");
                        for(int x=0;x<arr.length;x++)
                   {
                                if(x!=arr.length-1)
                                        System.out.print(arr[x]+",");    //少加个“;”
                            else
                                        System.out.println(arr[x]+"]");
                   }
           }
}



哥们呢,我已经全部帮你改过来了,不过建议你呢,以后一定要注意书写的规范,否则小错都会变成大错的."需要为 class、interface 或 enum",一般这样的问题是你的大括号或者分号没有用对地方,以后最好注意了
作者: 郑强强    时间: 2012-4-10 15:18
class  ArrayTest
{
        private ArrayTest()
        {
        }
        public static int getMax(int [] arr)
                /**
        获取一个整形数组的最大值
        @param arr接收一个int类型的数组
        @return 会返回一个数组中最大值
        */
        {
                int max=0;
                for(int x=1;x<arr.length;x++)
                {
                        if(arr[x]>arr[max])
                                max=x;
                }
                return arr[max];
        }
        public int getMin(int [] arr)
                        /**
        获取一个整形数组的最小值
        @param arr接收一个int类型的数组
        @return 会返回一个数组中最小值
        */
        {
                int min=0;
                for(int x=1;x<arr.length;x++)
                {
                        if (arr[x]<arr[min])
                        {
                                min=x;
                        }
                }
                return arr[min];
        }
        /**
        给int数组进行选择法排序
    @param arr接收一个int类型的数组
        */
       public void selectSort(int [] arr)    //这地方你的大括号用错了
    {
                                 for(int x=0;x<arr.length-1;x++)
                                   {
                        for(int y=x+1;y<arr.length;y++)
                        {
                                if(arr[x]>arr[y])
                                {
                                        swap(arr,x,y);
                                }
                        }
                  }
                }
                 /**
        给int数组进行冒泡法排序
    @param arr接收一个int类型的数组
        */
                 public void bubbleSort(int [] arr)
            {
                         for(int x=0;x<arr.length-1;x++)
                        {
                                 for(int y=0;y<arr.length-x-1;y++)
                                {
                                         if(arr[y]>arr[y+1])
                                        {
                                                swap(arr,y,y+1);
                                         }
                                 }
                         }
                 }
                          /**
        给两个元素进行位置置换
    @param arr接收一个int类型的数组
        @param a 要置换的位置
        @param b 要置换的位置
        */
                private static void swap(int [] arr,int a,int b)
                {
                        int temp=arr[a];
                        arr[a]=arr;
                        arr=temp;
                }
                /**
                打印数组元素
                @param arr 接收一个int数组
                */
                public static void printArray(int [] arr)
           {
                        System.out.print("[");
                        for(int x=0;x<arr.length;x++)
                   {
                                if(x!=arr.length-1)
                                        System.out.print(arr[x]+",");    //少加个“;”
                            else
                                        System.out.println(arr[x]+"]");
                   }
           }
}



哥们呢,我已经全部帮你改过来了,不过建议你呢,以后一定要注意书写的规范,否则小错都会变成大错的."需要为 class、interface 或 enum",一般这样的问题是你的大括号或者分号没有用对地方,以后最好注意了
作者: 欧阳才志    时间: 2012-4-10 16:06
谢谢了,哈哈!原来问题在这里,哎!是我太马虎了。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2