java基础程序设计

本文详细介绍了Java中数组的定义、初始化及操作方法,并探讨了方法的定义、重载及递归调用等内容。

 数组:

1.定义方法:
 1type array_name[]=null; //声明数组或
    type[] array_name=null;//声明数组,不包含任何内容,只分配内存(空间)来保存指向数       组实体地址的变量array_name,此时它的值为null
    array_name = new type[element_num]; //
为数组分配堆内存空间,并把这块内存空间地址赋值给array_name,可以有多个栈内存中的变量指向它,也就是可以把它赋值给多个引用变量。这里分配的空间大小为sizeof(array_name)*element_num.
    
如:int arr[]=null;
        arr = new int[5];
 2
)可以这样写:
    type array_name[]=new type[element_num];
    for(int i=0;i<element_num;i++)
      array_name[i]=I;
    
以上数组的初始化为动态初始化,除此之外还可以对数组静态初始化:
      type array_name[]={1,2,3,4,5};

2.元素表示方法
  array_name[index] (index是从0开始的整数,0<=index<array_name.length)

3.二维数组的声明
  type array_name[][];//声明数组
  array_name=new type[row_num][col_num];//实例化二维数组
  for(int i=0;i<row_num;i++) //动态初始化,赋值


     for(int j=0;j<col_num;j++)
       array_name[i][j]=val;
   

 
  type array_name=new type[row_num][col_num];//声明数组并开辟内存空间
 二维数组也可以用静态初始化:
  type array_name={{0行初值},{第1行初值},{n-1行初值}};

**数组的声明、实例化和赋值也与一、二维类同。

 

方法:

 方法就是一段可供程序反复调用的代码段。它本身与函数类同,只是叫法不同。

 方法的定义:
    [public] [static] return_type method_name([para_list])//static表明此方法由类调用而非对象调用,如果不加static则表明此方法由对象调用,public表明此方法的访问权限
    {
      method_body;
    }
    
如果方法不用传递参数,那么就不用写参数列表,只在方法名后面写一空括号(),如果方法没有返回值,那么方法返回类型为void,且可以省略方法体中的return语句。

  方法名命名规则:
  除第一个单词的首字小写之外,其余单词的首字母大写。

  方法的重载:
   方法名相同,方法的参数类型和个数不同。通过传递不同的参数个数、不同的参数类型来调用同名的不同方法来实现不同的功能。重载方法与方法的类型无关。
    如:public static int xx(int a,int b);
        public static int xx(int a,int b,int c);//
是重载
        public static void xx(int a,int b);//不是重载方法

 return语句退出方法

 方法的递归调用:
  条件:有明确的结束条件,传入不同的参数值实现递归调用。
  递归调用要小心,避免出现内存溢出。

 

数组的引用传递

   方法的参数可以是基本类型,也可以是引用类型,譬如数组。当参数为引用类型时,所传递的参数类型要与方法定义的对应参数类型相匹配,且在方法调用的过程中如果改变了引用参数本身,那么这个改变将保存下来。
   如:
      public static void main(String[] args)
      {
          int tmp[]=fun();
          print(tmp);
       }
       public static void print(int x[])
       {
          for(int i=0;i<x.length;i++)
          {
             System.out.println(x[i]+”
”);
          }
        }
        public static int[] fun()
        {
            int aa[]={1,3,5,7,9};
            return aa;
       }
      运行结果:13579

Java新特性对数组的支持

 可变参数:
    public static void main(String[] args)
    {
        System.out.print(“
不传递参数(fun())”);
        fun();
        System.out.println(“/n
传递1个参数(fun(1)”);
        fun(1);
        System.out.println(“/n
传递5个参数(fun(1,2,3,4,5)”);
        fun(1,2,3,4,5);
    }
    public static void fun(int… arg)
    {
        for(int i=0;i<arg.length;i++)
        {
           System.out.println(arg[i]+”
”);
        }
      }
      
运行结果:
        不传递参数(fun()):
        传递1个参数(fun()):1
        传递5个参数(fun(12345)):12345

   foreach输出:
      for(type var_name : arr_name/para_name)
      {
            ……
      }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值