//昨天基础语法for循环的一个实例练习补充:
//打印三角形
public class Deomo04 {
public static void main(String[] args) {
System.out.println("print shan jiao xing");
for(int i = 1;i<10;++i){
for (int a=10;a>i;--a){
System.out.print(" ");//打印小空格
}
for(int b=1;b<=i;++b){
System.out.print("*");//打印前半个
}
for(int c =1;c<i;++c){
System.out.print("*");//打印后半个
}
System.out.println();
}
}
}
结果:
emm。。。自己反复尝试6次成功,应该还有其他写法。
正题
一、Java的方法
1.定义:
完成特定功能的代码片段(类似其他语言的函数)
-
方法包含一个方法头和一个方法体。
1.修饰符:是可选的,告诉编辑器如何调用该方法,定义了该方法的访问类型。 2.返回值类型:方法可能会返回值。returnValueType是方法返回值的数据类型。有些方法执行所需操作但无返回值。在此情况下,returnValueType是关键字viod。 3.方法名:是方法的实际名称。方法名和参数表共同构成方法签名。 4.参数类型:参数像一个占位符。当方法被调用时,传递值给参数。这个值被称为实参或变量。参数列表是指方法的参数类型、顺序和参数的个数。参数是可选的,方法可以不包含任何参数。(- 形式参数:在方法被调用时用于接收外界输入的数据。 - 实参:调用方法时实际传给方法的数据) 5.方法体:方法体包含具体的语句,定义该方法的功能。
2.解释:
Java方法是语句的集合,其在一起执行某一功能。
- 方法是解决一类问题的步骤的有序组合
- $ 类||对象\supset 方法 $
- 方法在 程序 中被创建,在其他地方被引用。
3.设计方法的原则:
方法的本意是 功能块, 是实现某个功能的语句块集合。 设计方法时,最好保持方法的“原子性”,即 一个方法完成一个功能,这样利于后期的扩展。
4.命名规则:
第一个单词首字母小写而后每个单词的首字母大写。
例:printInfo()、getMessage()…
5.方法定义语法:
修饰符 返回类型 方法名(参数类型 参数名){
···
方法体
···
renturn 返回值;
}
二、范例
1.创建一个简单的加法方法
(方法名可以随意取
这里的名称为 add )
public class Deomo01 {
//main方法
public static void main(String[] args) {
//加法
int a=10;
int b=20;
int sum=add(a,b);
System.out.println(sum);
}
//定义一个加法
public static int add (int a,int b){
return a+b ;
}
}
结果
2.将写好的代码变成方法并调用
public class Deomo02 {
public static void main(String[] args) {
//调用方法 diaYong
diaYong();
}
//创造了一方法
public static void diaYong (){
int i;
for(i=1; i<=1000; ++i)
{ if(i%5==0){
System.out.print(i+"\t");
}
if(i%15==0){
System.out.println();
}
continue;
}
}
}
结果
3.方法的重载
当一个方法体无法完成要求时,可以为某一个方法定义多个方法体,即方法重载。
示例:
public class Deomo03 {
public static void main(String[] args) {
int sum1 =add(99,98);
double sum2 =add(444.0875656,7695.7895);
int sum3 =add(53,44,2542);
System.out.println(sum1 +"\n" + sum2+"\n" + sum3);
}
//两整形加法
public static int add(int x,int y){
return x+y;
}
//两浮点数
public static double add(double x,double y){
return x+y;
}
//三整形
public static int add(int x,int y,int z){
return x+y+z;
}
}
结果
4.方法的递归调用(有一点点难度嘻嘻)
import java.util.Scanner;
public class Deomo04 {
public static void main(String[] args) {
System.out.println("lian jia:"+f(100));//打印连加
System.out.println("jie cheng:"+n(10));//打印阶乘
//进阶
Scanner input =new Scanner(System.in); //结合以前的scanner知识,创建一个scanner控制台。(可以不加)
int sum1= f(input.nextInt());//定义了sum1变量,为输入值。
int sum2=n(input.nextInt());//定义了sum2变量,为输入值。
System.out.println("lian jian:"+sum1 +"\n" + "jie cheng:"+sum2);//打印结果。
input.close();//关闭控制台。
}
//递归的连加方法(自己套自己真好玩QAQ)
public static int f(int g){
if (g==1){
return 1;
}
else {
return g+(f(g-1));
}
}
//阶乘
public static int n(int m){
if (m==1){
return 1;
}
else {
return m*(n(m-1));
}
}
}
结果
—————————————————————————— QAQ 呼~~关于Java的方法部分我学完了,笔记中有大量的个人理解部分,仅供参考。如果有热心大佬发现我的错误理解之处,欢迎指正。加油,我再稳固一下马上学习 面向对象。