Java基础笔记(四)方法和数组

Java基础语法

Java语法之方法

类似于C语言中的函数,在java中,用于完成某些特定功能的代码块被称为方法。
格式如下:

	修饰符 返回值类型 方法名(参数类型1 参数名1,参数类型2 参数名2...){
		方法体语句;
		return 返回值;
	}
	/*
	修饰符:后面在修饰符这一块详细介绍,目前先用public static做方法修饰
	返回值类型:就是方法要返回的结果的类型,如果是void类型,就不需要return语句;
	方法名:就是方法的名字,方便调用该方法,建议见名知意最好,且第二个单词首字母要大写
	参数类型:就是要传递的参数的数据类型,可以是基本类型,也可以是引用类型
	参数名:就是要传递的参数,可以是变量,也可以是对象
	参数分类:
			实参:实际参与运算的数据
			形参:方法上定义的,用于接收实际参数的变量
	方法体语句:就是完成功能的代码块
	return:结束方法
	返回值:就是功能的结果,由return带给调用者。
	*/

1.方法调用:
1.有明确返回值的方法
  a:单独调用,没有意义
  b:输出调用,不是很好,因为可能需要对结果进行进一步的操作。
  c:赋值调用,推荐方案
2.void类型修饰的方法
  a:单独调用
2.方法的注意事项:
  A:方法不调用不执行
  B:方法之间是平级关系,不能嵌套定义
  C:方法定义的时候,参数是用“,”隔开的
  D:方法在调用的时候,不用在传递数据类型
  E:如果方法有明确的返回值类型,就必须有return语句返回。
3.方法重载:
  在同一个类中,方法名相同,参数列表不同。与返回值无关。

  参数列表不同:
    参数的个数不同。
    参数的对应的数据类型不同。
  注意:方法重载也叫做(overload),还有一个类似的叫做方法重写(override),在后面会有介绍,两个不要弄混。

来几个方法练习代码:

public class MyTest {
	// 求和方法+方法重载演示多个数值求和
	public static void main(String[] args) {
		// 调用求和方法并传递2个要求和的值,然后结果赋给sum1并输出
		int sum1 = sum(10, 20);
		System.out.println(sum1);
		// 调用求和方法并传递3个要求和的值,然后结果赋给sum2并输出
		int sum2 = sum(10, 20, 30);
		System.out.println(sum2);
		// 调用求和方法并传递3个要求和的值,然后结果赋给sum3并输出
		int sum3 = sum(10, 20, 30, 40);
		System.out.println(sum3);
	}

	public static int sum(int a, int b) {
		return a + b;
	}

	public static int sum(int a, int b, int c) {
		return a + b + c;
	}

	public static int sum(int a, int b, int c, int d) {
		return a + b + c + d;
	}
}
/*
 *	需求:打印九九乘法表
 *	分析:
 *		a:写一个方法实现这个功能,方法名叫printTable
 *		b:返回值类型应该是void,参数无
 *		c:两层for循环实现,外层控制行数,里层控制列数
 *		d:根据乘法口诀表我们可以看出,每一个结果应该是行与列的乘积		
 */
public class MyTest {
	public static void main(String[] args) {
		// 调用方法
		printTable();
	}

	public static void printTable() {
		for (int x = 1; x < 10; x++) {
			for (int y = 1; y <= x; y++) {
				System.out.print(y + "*" + x + "=" + (x * y) + "\t");
			}
			System.out.println();
		}
	}
}

/*
	输出效果:
	1*1=1	
	1*2=2	2*2=4	
	1*3=3	2*3=6	3*3=9	
	1*4=4	2*4=8	3*4=12	4*4=16	
	1*5=5	2*5=10	3*5=15	4*5=20	5*5=25	
	1*6=6	2*6=12	3*6=18	4*6=24	5*6=30	6*6=36	
	1*7=7	2*7=14	3*7=21	4*7=28	5*7=35	6*7=42	7*7=49	
	1*8=8	2*8=16	3*8=24	4*8=32	5*8=40	6*8=48	7*8=56	8*8=64	
	1*9=9	2*9=18	3*9=27	4*9=36	5*9=45	6*9=54	7*9=63	8*9=72	9*9=81
*/
Java语法之数组

java中的数组,是存储同一种数据类型的多个元素的容器。数组是相同类型的变量按顺序组成的一种复合数据类型,称这些相同类型的变量为数组的元素或单元。数组通过数组名加索引来使用数组的元素。
数组属于引用型变量,创建数组需要经过声明数组和为数组分配变量两个步骤。

声明格式:
A:数据类型[] 数组名;
B:数据类型 数组名[];
例如: float boy[];
    float[] boy;

分配变量:

声明数组后,还必须为它分配内存空间,为一维数组分配内存空间的格式如下:

数组名字 = new 数组元素的类型[数组元素的个数];

例如: float boy[];

boy= new float[4];

声明数组和创建数组可以一起完成,例如:
float boy[]=new float[4];
数组的初始化

	动态初始化
		只给长度,系统给出默认值
			
		举例:int[] arr = new int[3];
	静态初始化
		给出值,系统决定长度
		举例:int[] arr = new int[]{1,2,3};
		简化版:int[] arr = {1,2,3};

Java的内存分配:

		A:栈 存储局部变量
		B:堆 存储所有new出来的
		C:方法区(面向对象部分内容)
		D:本地方法区(系统相关)
		E:寄存器(CPU使用)
注意:
		a:局部变量 在方法定义中或者方法声明上定义的变量。
		b:栈内存和堆内存的区别
			栈:数据使用完毕,就消失。
			堆:每一个new出来的东西都有地址
				   每一个变量都有默认值
					byte,short,int,long 0
					float,double 0.0
					char '\u0000'
					boolean false
				    引用类型 null
				    数据使用完毕后,在垃圾回收器空闲的时候回收。

使用数组

一维数组通过索引符访问自己的元素,如boy[0],boy[1]等。需要注意的是索引从0开始 。

二维数组也通过索引符访问自己的元素,如a[0][1],a[1][2]等。需要注意的是索引从0开始。

比如声明创建了一个二维数组a:

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

那么第一个索引的变化范围为从0到1,第二个索引变化范围为从0到2。
下面来一些数组的常见操作和

常见数组使用代码

数组遍历
public class MyTest {
	public static void main(String[] args) {
		// 创建一个数组
		int[] a = { 1, 23, 45, 6536, 347, 67, 13, 41234, 2135, 41 };
		// 调用数组遍历方法
		arrayTraversal(a);
	}

	public static void arrayTraversal(int[] arr) {
		// for循环遍历数组所有元素
		for (int x = 0; x < arr.length; x++) {
			System.out.println(arr[x]);
		}
	}
}
数组最值
public static int getMax(int[] arr) {
		int max = arr[0];

		for (int x = 1; x < arr.length; x++) {
			if (arr[x] > max) {
				max = arr[x];
			}
		}

		return max;
	}
最小值:
public static int getMin(int[] arr) {
		int min = arr[0];

		for (int x = 1; x < arr.length; x++) {
			if (arr[x] < min) {
				min = arr[x];
			}
		}

		return min;
	}
逆序
	方式1:
		public static void reverse(int[] arr) {
			for(int x=0; x<arr.length/2; x++) {
				int temp = arr[x];
				arr[x] = arr[arr.length-1-x];
				arr[arr.length-1-x] = temp;
			}
		}
		方式2:
		public static void reverse(int[] arr) {
			for(int start=0,end=arr.length-1; start<=end; start++,end--) {
				int temp = arr[start];
				arr[start] = arr[end];
				arr[end] = temp;
			}
		}
查表
		public static String getString(String[] strArray,int index) {
			return strArray[index];
		}
基本查找
	方式1:
		public static int getIndex(int[] arr,int value) {
			for(int x=0; x<arr.length; x++) {
				if(arr[x] == value) {
					return x;
				}
			}
			return -1;
		}	
	方式2:
		public static int getIndex(int[] arr,int value) {
			int index = -1;
			for(int x=0; x<arr.length; x++) {
				if(arr[x] == value) {
					index = x;
					break;
				}
			}	
			return index;
		}
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java基础学习笔记 # 一、Java简介 Java是一种面向对象的编程语言,由Sun Microsystems(现在是Oracle)于1995年首次发布。它具有跨平台的特性,可以在不同的操作系统上运行。Java语言被广泛应用于开发各种类型的应用程序,包括桌面应用、Web应用、移动应用等。 # 二、Java基本语法 ## 1. 变量与数据类型 Java是强类型语言,每个变量必须先声明后使用。Java提供了多种数据类型,包括基本数据类型(整数、浮点数、字符、布尔值)和引用数据类型(类、接口、数组)。 ## 2. 运算Java提供了多种运算符,包括算术运算符、关系运算符、逻辑运算符等,用于进行各种数学或逻辑运算。 ## 3. 控制流程 Java提供了多种控制流程语句,包括条件语句(if-else语句、switch语句)、循环语句(for循环、while循环)、跳转语句(break语句、continue语句)等,用于控制程序的执行流程。 ## 4. 方法和类 Java中的方法用于封装一段可重复使用的代码,可以带有参数和返回值。类是Java程序的基本组织单位,包含了属性和方法。可以使用关键字class定义一个类,通过实例化类的对象来调用其方法。 # 三、面向对象编程 Java是一种面向对象的编程语言,面向对象编程的核心概念包括封装、继承和多态。 ## 1. 封装 封装是将数据和行为打包成一个类,通过访问修饰符(public、private等)控制对类的成员的访问权限。 ## 2. 继承 继承允许一个类继承另一个类的属性和方法,并且可以通过重写来修改或扩展继承的方法。 ## 3. 多态 多态允许通过父类类型的引用来引用子类对象,实现对不同子类对象的统一调用。 # 、异常处理 Java提供了异常处理机制,用于处理程序中的错误情况。异常分为可检查异常(checked exception)和不可检查异常(unchecked exception),可以使用try-catch语句来捕获和处理异常。 # 五、Java标准库 Java标准库提供了大量的类和接口,用于完成各种常见的任务。其中包括输入输出、集合、多线程、网络编程等功能,可以大大简化开发过程。 以上是我学习Java基础笔记总结,希望对你有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值