方法就是一段可重复调用的代码段!

方法的重载:一定只是参数上的类型或个数上有所不同。

java新特性:

            可变参数

           foreach输出

 

 

public class Array {

 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub

  
 //(1)递归调用
 System.out.println("1--100的计算结果:"+sum(100));
 
 //(2)阶乘求和
 sumOne(3);
 
 //(3)求数组中奇数和偶数的个数
 int arr[]={1,5,4,3,6,4,9};
 oddEvnn(arr);
 
 //(4)去除0的个数 //去除一个数组中零的个数
 int arro[]={12,6,0,8,5,0,0,7,6,50,0};
 wipeZero(arro);
 
 
 //(5)求一个数组中的元素和,最大值,最小值
 int[] arrt={1,4,5,3,5,3,5,7,8,4};
 sumMaxMin(arrt);
 
 ////将排序好的数组插入合适的位置一个数字
 int[] arrth={1,3,4,6,7,8,9};
 insert(arrth,5);
 
 

 


 }
 //递归的调用方法
 public static int sum(int num){
  if(num==1){
   return 1;
  }else {
   return num+sum(num-1);
  }
 }
 
 //阶乘求和
 public static void sumOne(int k){
  int num=1;
  int sum=0;
  for(int i=1;i<=k;i++){
   num=num*i;
   sum=sum+num;
  }
  System.out.println(sum);
 }

 //求数组中奇数和偶数的个数
 public static void oddEvnn(int[] arr){
  int oddcount=0;
  int evnncount=0;
  for(int i=0;i<arr.length;i++){
   if(arr[i]%2==0){
    evnncount++;
   }else {
    oddcount++;
   }
  }
  System.out.println("数组中偶数的个数为:"+evnncount+"\n奇数的个数为:"+oddcount);
 }

 
 //去除一个数组中零的个数
 public static void  wipeZero(int[] arr){
  //int count=0;
  //int temp=0;
  for (int i = 0; i < arr.length; i++) {
   if(arr[i]==0){
    //count=count+1;
    continue;
   }else{
    //temp=arr[i];
    System.out.print(" "+arr[i]);
   }
  }
  //System.out.println(arr[i]);
  //int[] arrone=new int[arr.length-count];
  //return arrone;
 }
 
 
 //求一个数组中的元素和,最大值,最小值
 public static void sumMaxMin(int[] arr){
  int sum=0;
  int max=0;
  int min=0;
  max=min=arr[0];
  for (int i = 0; i < arr.length; i++) {
   
   sum=sum+arr[i];
   
   if (arr[i]>max) {
    max=arr[i];
   }
   if (arr[i]<min) {
    min=arr[i];
   }
  }
  System.out.println("\n"+sum);
  System.out.println(max);
  System.out.println(min);
 }
 
 
 //将排序好的数组插入合适的位置一个数字(错误思考)
 public static void insert(int[] arr,int x){
  for(int i=0;i<arr.length;i++){
   if(x<=arr[i]&&x>arr[i+1]){
    for(int j=arr.length-i;j>0;j++){
     arr[j]=arr[j-1];
    }
    arr[i+1]=x;
    break;
   }
   
  }
  
 }
}