【JavaSE】class方法簡單認(rèn)識
方法定義
為了避免程序混亂不便于使用,所以出現(xiàn)方法調(diào)用這一狀況:
- 注意事項(xiàng):
- 方法定義的先后順序無所謂;
- 方法必須是緊挨著的,不能夠在一個方法內(nèi)定義另一個方法;
具體定義代碼如下所示:
public static void 方法名稱(){
方法體;
}
使用時(shí)只需在主程序上面public static void mian(String[] args){}上寫下變量名稱便可以執(zhí)行,如下:
public class DemoMethod {
public static void main(String[] args) {
for (int i = 10; i < 20; i++) {
for (int j = 0; j < 20; j++) {
System.out.print("*");
}
System.out.println("");
}
}
}
轉(zhuǎn)換為方法調(diào)用的話會變成以下幾種樣式:
package com.demo.study0614;
/*方法名稱:
* public static void 方法名稱(){
* 方法體
* }
*
* 定義格式:
* 方法名稱();
*/
public class DemoMethod {
public static void main(String[] args) {
printMethod();
}
//public是說明這個是公開的方法,如果僅此class方法使用,定義private
public static void printMethod() {
for (int i = 10; i < 20; i++) {
for (int j = 0; j < 20; j++) {
System.out.print("*");
}
System.out.println("");
}
}
}
方法使用
對比有參數(shù)和無參數(shù):
package com.demo.study0614;
/*
* 對比有參數(shù)和無參數(shù)
* 有參數(shù):小括號內(nèi)之中有內(nèi)容,當(dāng)一個方法需要一些數(shù)據(jù)條件,才能夠完成任務(wù)
* 數(shù)字運(yùn)算,必須知道兩個數(shù)值是多少,才能夠進(jìn)行使用
* 無參數(shù):小括號內(nèi)留空,一個方法不需要任何條件,自己就能獨(dú)立完成任務(wù),就是無參數(shù)
* 定義一個固定方法,打印10次HelloWorld;
*/
public class DemoMethodParam {
public static void main(String args[]) {
System.out.println("參數(shù)學(xué)習(xí)");
method(10, 10);//method方法就是需要有參數(shù),如果不設(shè)置數(shù)值的化會出現(xiàn)報(bào)錯
System.out.println("打印10個*結(jié)果:");
method2();
}
public static void method(int a,int b) {
int result = a + b;
System.out.println("數(shù)值結(jié)果是:"+result);
}
public static void method2() {
for (int i = 0; i < 10; i++) {
System.out.print("*");
}
}
}
方法有返回值與無返回值:
注意事項(xiàng):
- 對于有返回值的,可以單獨(dú)調(diào)用,打印調(diào)用或賦值調(diào)用
- 對于無返回值的方法,只能使用單獨(dú)調(diào)用
package com.demo.study0614;
/*
* 對比有返回值與無返回值
* 定義一個方法,使用方法 求兩個數(shù)據(jù)之和
*/
public class DemoMethodReturn {
public static void main(String args[]) {
//main方法對getSum進(jìn)行調(diào)用
//main提供數(shù)值,getSum方法進(jìn)行計(jì)算
int num = getSum(15, 15);
System.out.println("返回值是:"+num);
System.out.println("=========");
//無返回值的方法
printSum(15, 10);
}
//有返回值int,誰調(diào)用便給誰用,把計(jì)算結(jié)果返回去
public static int getSum(int a,int b) {
int result = a+b;
return result;
}
//沒有返回值,不會將輸給跟任何人說,自己進(jìn)行打印輸出
public static void printSum(int a,int b) {
int result = a+b;
System.out.println("無返回值調(diào)用結(jié)果:"+result);
}
}

方法的注意事項(xiàng)
- 方法應(yīng)該定義在類當(dāng)中,但是方法中不能夠在定義方法,不能夠進(jìn)行方法嵌套
- 方法定義的前后順序無所謂
- 方法定義之后不會執(zhí)行,如果一定要執(zhí)行,一定要進(jìn)行調(diào)用,調(diào)用方法有:單獨(dú)調(diào)用,打印調(diào)用,賦值調(diào)用
- 如果方法有返回值,那么必須必須寫上“return”返回值,不能沒有 return的返回值數(shù)據(jù),必須和返回值類型對應(yīng)起來
- 對于void的返回值的方法,不能夠?qū)憆eturn后面的返回值,只能return自己 對于一個void方法中,return可以省略不寫
- 一個方法可以有多個return語句,但是必須保證同時(shí)只有一個被執(zhí)行到 return語句可以存著多個,但是兩個return語句不能夠連寫。
package com.demo.study0614;
public class DemoMethodNotice {
public static int method1() {
return 10;//return的值必須要是int型
}
public static void method2() {
System.out.println("AAA");
return;//void的方法沒有返回值,期間return的作業(yè)是僅僅表示結(jié)束方法執(zhí)行而已
}
public static int getMax(int a,int b) {
//判斷寫法
// int max;
// if (a>b) {
// max = a;
// } else {
// max = b;
// }
// return max;
//新的寫法
if (a>b) {
return a;
} else {
return b;
}
}
}
方法練習(xí)
問題: 比較兩個數(shù)字,定義一個方法,用來判斷兩數(shù)字是否相同
package com.demo.study0614;
/*
* 比較兩個數(shù)字
* 定義一個方法,用來判斷兩數(shù)字是否相同
*
*/
public class DemoMethodSame {
public static void main(String args[]) {
System.out.println("比較兩個數(shù)字:");
System.out.println(isSame(10, 10));
System.out.println(isSame1(10, 5));
}
/*
* 三要素:
* 返回值類型,boolean
* 方法名稱,isSanme
* 參數(shù)列表,int a,int b
*/
public static boolean isSame(int a,int b) {
/*boolean same;
//寫法1
// if (a == b) {
// same=true;
// }else {
// same=false;
// }*/
//寫法2
// same = a == b ? true:false;
return a == b;//寫法4,只判斷a是否與b相等
}
public static boolean isSame1(int c,int d) {
// 寫法3
boolean same1;
same1 = c==d;
return same1;//必須要保證return后面必須是布爾值
}
}
package com.demo.study0614;
/*
* 定義一個方法,求1-100的所以數(shù)值的和
*/
public class DemoMethodSum {
public static void main(String args[]) {
System.out.println("1-100求和結(jié)果是:"+getSum());
}
/*
* 返回值:sum,一個int型數(shù)據(jù)
* 方法名稱:getSum
* 參數(shù)列表:1-100,數(shù)據(jù)范圍已經(jīng)固定,不需要告訴任何條件
*/
public static int getSum() {
int sum = 0;
for (int i = 0; i < 100; i++) {
sum += i;
}
return sum;
}
}
package com.demo.study0614;
/*
* 定義一個方法,用來打印指定次數(shù)到Hello world
*/
public class DemoMethodPrint {
public static void main(String args[]) {
System.out.println("打印 helloworld");
System.out.println("=============");
printCount(10);
}
public static void printCount(int num) {
for (int i = 0; i < num; i++) {//參數(shù)num
System.out.println("HelloWorld"+(i+1));
}
}
}

浙公網(wǎng)安備 33010602011771號