Java学习笔记(四)----Java中的方法、数组

Java的方法类似于其它语言的函数,方法是解决一类问题的步骤的有序组合,方法包含 于类或对象中.。方法在程序中被创建。

语法格式

[访问权限修饰符 修饰符…] [返回值类型] 方法名(形式参数类型 参数名){
Java语句;… … …
[return 返回值;]
}

关于返回值类型

  • 返回值类型可以是任何类型,只要是java中合法的数据类型就行,数据类型包括基本数据类型和引用数据类型,也就是说返回值类型可以是:byte short int long float double boolean char String…
  • 什么是返回值?返回值一般指的是一个方法执行结束之后的结果。结果通常是一个数据,所以被称为“值”,而且还叫“返回值”。方法就是为了完成某个特定的功能,方法结束之后大部分情况下都是有一个结果的,而体现结果的一般都是数据。数据得有类型。这就是返回值
  • 方法执行结束之后的返回值实际上是给调用者,谁调用就返回给谁
  • 返回值类型:事先约定的返回值的数据类型,如无返回值,必须给出返回值类型void
  • 实参的数目、数据类型和次序必须和所调用方法声明的形参列表匹配
  • return 语句终止方法的运行并指定要返回的数据

例如

public static void main(String[] args) {
    short a = 10;
    short b = 5;
   //调用方法
      Demo2.show();
     int m =  Demo2.max(a,b);
     System.out.println(m);

     Demo2.max1();

}

//自定义的方法  返回两个整数中较大的一个
//public 访问权限修饰符 公共的   void 表示方法没有返回值 show方法名  ()参数列表
// static 类方法  通过类名调用
public static void show(){
    System.out.println("showshow");
}

/*
   定义了一个有参数,有返回值的方法   注意参数以及返回值的数据类型
 */
public static int max(int m,int n){
       int max = (m>n)?m:n;//判断返回大的
       return max;//通过return 关键字  返回结果
}

public static void max1(){
    int max = 10;
    if(max==11){
        return;//终止方法   return后面不能加任何表达式
    }
    System.out.println("max"+max);
}

数组

数组的定义:

  • 数组是相同类型数据的有序集合.

  • 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成。

  • 其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们.

创建一个数组

int a[]=new int[5] //定义一个长度为5的数组
或int []a=new int[5]

数组的元素是通过索引访问的。索引从零开始到a,length-1.

例如

int a[]=new int[3];
a[0]=3;
a[1]=2;
a[2]=1;

数组的访问与迭代

1.for循环

int [] a = new int []{1,2,3,4,5,6,7};
for(int i =0;i<b1.length;i++){
System.out.println(a[i]);
}

2.增强for循环

int [] b = new int []{1,2,3,4,5,6,7};
for(数组元素的类型 临时变量名字 :数组的名字){
System.out.println(临时变量名字 );
}
即:
for(int x:b){
System.out.println(x);
}

数组排序

  • 冒泡排序:比较相邻的两个元素,如果第二个比第一个大,则交换两个元素,一直这样下去,最后的元素就是最大的元素。即:
public static void main(String[] args) {

      int[] a = {4,5,3,2,1};
       for(int i=0;i<a.length-1;i++){//比较的趟数
             for(int j=0;j<a.length-1-i;j++){//相邻比较
                  if(a[j]>a[j+1]){//比较
                      //交换
                      int temp = a[j];//先寄存一个
                      a[j] = a[j+1];
                      a[j+1] = temp;
                  }
             }
       }

    System.out.println(Arrays.toString(a));
}
  • 选择排序:

选择排序就是通过选择一个数组中的最大(小)值排序到数组的头部位置(和头部位置交换)接下来循环剩余数组找到次最大(小)值排序到第二的位置,以此类推,直到所有的数字都被选择完成之后完成排序

public static void main(String[] args){
	    int arr[] = {1,3,6,5,2,4,8,9,7,0}; //初始化一个数组
	    for(int i = 0;i<arr.length-1;i++) {   
	    	for(int j=i+1;j<arr.length;j++) {
	    		if(arr[i]>arr[j]){   //当前面的数大于后面的数时交换位置(从小到大排序)
	    			int temp = arr[i];  //以第2次循环中3和2比较为例://将3值赋值给变量temp,                                         
                                        //temp的值为3
	    			arr[i]=arr[j];           //将2的值赋值给i,此时i=2
	    			arr[j]=temp;            //将temp的值赋值给j,此时j的值为3
	    		}                           
	    	}
	    }
	    for(int i = 0; i<arr.length;i++) {
	    	System.out.print(" "+arr[i]); //输出排序后的数组
	    }	    		    
	}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值