Java方法

开发工具

IDE:软件开发工具,集成开发环境.
免费的IDE当中:Eclipse;
收费的IDE当中:IntelliJ IDEA;

收费的下载:www.jetbrains.com
		UItimate:收费,功能较强.
		Community:社区版免费,功能较弱.

完整的方法定义格式:

	方法就是若干语句的功能集合.方法好比是一个工厂
	原料(参数),就是进入方法的数据
		返回值(产出物),就是从方法中出来的数据.
访问修饰符  返回值类型 方法名称(参数类型  参数名称 ,.....){
		方法体;
		return 返回值; 看返回值的类型
		}
返回值类型	  :	  产生的结果是什么类型
	参数类型	:	进入方法的数据是什么类型
	参数名称	:	进入方法的数据对应的变量名称
return:两个作用,第一是停止当前方法,的第二个是将返回值还给调用处.
		返回值,也就是方法执行的结果.

方法的调用格式:

		单独调用:方法调用(参数)
		打印调用:System.out.println(方法名称(参数));
		赋值调用:数据类型 变量名称=方法名称(参数);
	此前学习的方法返回值类型固定写为void ,这种方法只能够单独调用,不能进行打印调用或赋值调用.
	有参数	:	小括号当中的内容,当一个方法需要一些数据条件,才能完成任务的时候,就是有参数的.
	无参数	:	小括号当中留空,一个方法不需要任何数据条件,自己能够独立完成,就是无参数.直接打印输出.
		有参数和无参数;

方法的注意事项 :

	方法应该定义在类当中,但是不能在方法当中再定义方法,方法不能嵌套使用;
		方法定义的前后顺序无所谓,只看调用方法的顺序.
	方法定义之后不会执行,如果希望之星,一定要调用,单独调用,打印调用,赋值调用.
		方法如果有返回值,那么必须写上return返回值.
	return后面的返回指数,必须和方法的返回值类型对应起来.
	对于void没有返回值的方法,不能写return后面的返回值,只能写return自己.这时时结束方法的执行.对于方法当中最后一行的return可以不写;	
	一个方法当中可以有多个return语句,但是必须保证同时只有一个会被执行.

方法重载:

	方法名称相同,参数列表不同.传几个参数,调用几个参数的方法.
	方法重载与下列因素有关:
			参数个数不同
		参数类型不同
			参数的多类型顺序不同.
					sum(double b,int a)
				sum(int a, double b)
	与下列因素无关:
			与参数的名称无关不能根据参数名称重载.
		与方法的返回值类型无关.
		与修饰符无关.public static.这两个修饰无关.

===============================================

public class FangFa {

	public static void main(String[] args) {
		//打印矩形.
		for (int i = 0; i < 5; i++) {
			//执行外面一遍,里面的一遍执行完,在执行外面循环,再来循环里面的循环
			for (int j = 0; j < 15; j++) {
				System.out.print("w");
			}
			System.out.println();
		}	
		//错误写法,因为return的是一个int,方法中没有声明.
		//void没有返回值的方法,不能写return后面的返回值,只能写return自己
//		int a=10;
//		int b=12;
//		if(a>b){
//			return a;
//		}else{
//			return b;
//		}
		
	}
	
}

---------------------------------------------------------------------------------------
//打印调用
public class Text01 {

	public static void main(String[] args) {
		//这个return得定义一个值来接受返回的对象
//		int s=sum(1,3);
//		System.out.println(s);
		//输出调用的对象就是方法本身的返回值,直接给输出了出来
		System.out.println(sum(10,30));
		//直接调用
		//对于有返回值的方法,一定需要接收参数输出参数.
		int sum = sum(88,12);
		System.out.println(sum);
	}
	public  static  int sum(int a,int b){
		int result=a+b;
		return result;//把数据还给调用者.
	}
}

------------------------------------------------------------
import java.util.Scanner;

/*
 * 	定义一个方法:求两个数字之和
 * 		这种写法不能输入小数,输入的话会报错.
 * */
public class Text02 {
	//升级成静态的全局的,静态方法只能调用静态成员变量
	static Scanner input=new Scanner(System.in);
	public static void main(String[] args) {
		System.out.println("请输入第一个整数数字");
		int a=input.nextInt();
		System.out.println("请输入第二个整数数字");
		int b=input.nextInt();
		sum(a,b);
		int result=sum2(a,b);
		System.out.println(result);
		System.out.println(sum2(a,b));
	}
	
	public static void sum(int a,int b){
		
		int result=a+b;
		System.out.println(result);
		
	}
	//带有返回值的方法
	public static int sum2(int a,int b){
		
		return a+b;
		
	}
	
}

--------------------------------------------------------
import java.util.Scanner;
/*
 * 	比较两个数是否相同:
 */
public class Text03 {
	static Scanner input=new Scanner(System.in);
	public static void main(String[] args) {
		System.out.println("请输入第一个数字");
		int a=input.nextInt();
		System.out.println("请输入第二个数字");
		int b=input.nextInt();
		//必须接受返回值才能输出.
		boolean result=isTrue(a,b);
		System.out.println(result);
	}
	//返回值类型是布尔类型的.
	public static boolean isTrue(int a,int b){
		//1:定义一个变量用来接收可能产生的结果,使用逻辑赋予具体的对应的值.
		boolean same;
		
//		if(a==b){
			
			same= true;
			
		}else{
			
			same= false;
		}
				
		//2:三元运算符.
			boolean same;
			//加括号只是为了好看,不加一点问题都没有
			same=(a==b)?true:false;
			return same;
		
		//3:
//			boolean same=(a==b);
//			return same;				
		//4:直接返回的就是一个布尔值.
//			return a==b;
			
	}
}

------------------------------------------------------------------
/*
 * 	求出1到100之间的累加和:
 * 		典型java逻辑题.
 * 
 * 
 */
public class Text04 {

	public static void main(String[] args) {
		//return必须有值来接收,再输出.
		int result=add();
		System.out.println("结果是"+result);
	}
	public static int add(){
		//初始化的参数
		int x=1;
		//需要返回的结果
		int sum=0;
		for (int i = 0; i <=100; i++) {
			//进行累加的操作
			sum+=i;
		}
		//返回值结果
		return sum;
	}
}

-------------------------------------------------------------
import java.util.Scanner;

/*
 *	 打印指定次数的HelloWorld
 */
public class Text05 {

	public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		System.out.println("请输入次数");
		int num = sc.nextInt();
		//没有返回值,直接调用输出
		printCount(num);
	}
	public static void printCount(int num){
		//循环进行的操作
		for (int i = 0; i <=num; i++) {
			System.out.println("HelloWorld"+"第"+i+"次");
		}	
	}
}

------------------------------------------------------------------
/*
 * 	方法重载	:
 * 		方法名称相同,与返回值类型无关,参数列表不相同
 * 	参数列表中对应相同的类型参数,方法中传入的类型也应该是对应的具体类型.
 * 
 */
public class Text06 {

	public static void main(String[] args) {
		System.out.println(sumTwo(10,20));
		System.out.println(sumTwo(10.3,20.2,30.3));
		System.out.println(sumTwo(10,20,30,40));
	}
	public static int sumTwo(int a,int b){
		
		return a+b;
		
	}
	public static double sumTwo(double d,double e,double f){
		
		return d+e+f;
		
	}
	public static int sumTwo(int a,int b,int c,int d){
	
		return a+b+c+d;
				
}
	
}

--------------------------------------------------------------
import java.util.Scanner;

/*
 * 	判断两个数的数据是否相等
 * 		充分利用了方法的重载.
 * 	这个方法明确返回值是一个布尔类型.
 * 		
 */
public class Text07 {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入第一个数值");
		int a = sc.nextInt();
		System.out.println("请输入第二个数字");
		int b = sc.nextInt();
		boolean same = isSame(a, b);
		System.out.println(same);
		System.out.println(isSame(21, 21));
		// 强转为short,因为想调用short对应的方法看一下
		System.out.println(isSame((short) 22, (short) 22));
		// 赋值为long类型,查看调用方法
		System.out.println(isSame(21L, 21L));
	}

	public static boolean isSame(byte a, byte b) {
		System.out.println("两个byte");
		boolean same = false;
		if (a == b) {

			same = true;

		}

		return same;

	}

	public static boolean isSame(short a, short b) {
		System.out.println("两个short");
		boolean same = a == b ? true : false;
		return same;

	}

	public static boolean isSame(int a, int b) {
		System.out.println("两个int");
		// 不是问好,直接就是一个
		return a == b;

	}

	public static boolean isSame(long a, long b) {
		System.out.println("两个long");
		if (a == b) {
			return true;
		} else {
			return false;
		}

	}

}

-----------------------------------------------------
public class Text08 {
	
	public static void main(String[] args) {
		// 调用不同的输出语句,自动寻找匹配的参数.

		byte sun=30;
		myPrint(sun);
		short sun1=30;
		myPrint(sun1);
		int sun2=30;
		myPrint(sun2);
		long sun3=30;
		myPrint(sun3);
		double sun4=30;
		myPrint(sun4);
		float sun5=30;
		myPrint(sun5);
		String sun6="re";
		myPrint(sun6);
		
		
		myPrint("hello");
		myPrint(35.2);
		
	}

	public static void myPrint(byte sun){
		
		System.out.println(sun);
		
	}
	public static void myPrint(short sun){
		
		System.out.println(sun);
		
	}
	public static void myPrint(int sun){
		
		System.out.println(sun);
		
	}
	public static void myPrint(long sun){
		
		System.out.println(sun);
		
	}
	public static void myPrint(double sun){
		
		System.out.println(sun);
		
	}
	public static void myPrint(float sun){
		
		System.out.println(sun);
		
	}
	public static void myPrint(String sun){
		
		System.out.println(sun);
		
	}
	
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值