簡(jiǎn)單了解Java方法的定義和使用實(shí)現(xiàn)
什么是方法?
- System.out.println(),那么它是什么呢?系統(tǒng)類里的,對(duì)象out,輸出方法println
- Java方法是語(yǔ)句的集合,它們?cè)谝黄饒?zhí)行一個(gè)功能。
- 方法是解決一類問(wèn)題的步驟的有序組合
- 方法包含于類或?qū)ο笾?/li>
- 方法在程序中被創(chuàng)建,在其他地方被引用
- 設(shè)計(jì)方法的原則:方法的本意是功能塊,就是實(shí)現(xiàn)某個(gè)功能的語(yǔ)句塊集合。我們?cè)O(shè)計(jì)方法的時(shí)候,最好保持方法的原子性,就是只完成一個(gè)功能,這樣利于我們后期的擴(kuò)展。
- 回顧:方法的命名規(guī)則?
- 練習(xí):
package com.lxw.method;
public class Demo01 {
public static void main(String[] args) {
// int add = add(1, 5);
// System.out.println(add);
box();
}
public static int add(int a, int b) { //static讓這個(gè)方法成為類方法,不然無(wú)法直接在主方法調(diào)用,
// 定義一個(gè)方法名字加類型如果是void就沒(méi)有返回值,如果有就有返回值
return a + b;
}
public static void box() {
for (int i = 1; i <= 5; i++) { //外層循環(huán)5次,代表五行
for (int j = 5; j >= i; j--) {
System.out.print(" ");
}
for (int j = 1; j <= i; j++) {
System.out.print("*");
}
for (int j = 1; j < i; j++) {
System.out.print("*");
}
System.out.println();
}
}
}
方法的定義
- Java的方法類似于其他語(yǔ)言的函數(shù),是一段用來(lái)完成特定功能的代碼片段,一般情況下,定義一個(gè)方法包含以下語(yǔ)法:
- 方法包含一個(gè)方法頭和一個(gè)方法體。下面是一個(gè)方法的所有部分:
- 修飾符:修飾符,這是可選的,告訴編譯器如何調(diào)用該方法。定義了該方法的訪問(wèn)類型。
- public是公共的,所有人都可以使用
- 它返回值類型:方法可能會(huì)返回值。returnValueType是方法返回值的數(shù)據(jù)類型。有些方法執(zhí)行所需的操作,但沒(méi)有返回值。在這種情況下,returnValueType是關(guān)鍵字void。
- 方法名:是方法的實(shí)際名稱。方法名和參數(shù)表共同構(gòu)成方法簽名。
- 參數(shù)類型:參數(shù)像是一個(gè)占位符。當(dāng)方法被調(diào)用時(shí),傳遞值給參數(shù)。這個(gè)值被稱為實(shí)參或變量。參數(shù)列表是可選的,方法可以不包含任何參數(shù)。
- 形式參數(shù):在方法被調(diào)用時(shí)用于接收外界輸入的數(shù)據(jù)
- 實(shí)參:調(diào)用方法時(shí)實(shí)際傳給方法的數(shù)據(jù)。
- 方法體:方法體包含具體的語(yǔ)句,定義該方法的功能。
- 修飾符:修飾符,這是可選的,告訴編譯器如何調(diào)用該方法。定義了該方法的訪問(wèn)類型。

- 方法調(diào)用
- 調(diào)用方法:對(duì)象名.方法名(實(shí)參列表)
- Java支持兩種調(diào)用方法的方式,根據(jù)方法是否返回值來(lái)選擇。
- 當(dāng)返回一個(gè)值的時(shí)候,方法調(diào)用通常被當(dāng)作一個(gè)值。例如:
int larger=max(30,40);
- 如果方法返回值是void,方法調(diào)用一定是一條語(yǔ)句。
System.out.println("Hell0,kuangshen!");
課后拓展了解:值傳遞(Java)和引用傳遞
練習(xí):
package com.lxw.method;
public class Demo01 {
//main方法
public static void main(String[] args) {
//實(shí)際參數(shù):實(shí)際調(diào)用傳遞給他的參數(shù)
int add = add(1, 5);
System.out.println(add);
}
//加法
//形式參數(shù),用來(lái)定義作用的
//public是公共的,所有人都可以使用它
public static int add(int a, int b) { //如果要直接使用這個(gè)方法,static讓這個(gè)方法成為類方法,不然無(wú)法直接在主方法調(diào)用,
// 定義一個(gè)方法名字加類型如果是void就沒(méi)有返回值,如果有就有返回值
return a + b; //如果方法存在返回值的話,一定要用return返回如果是void就不用返回了
}
}
2021.6.2 方法的重載(重要筆試可能遇到)
- 重載就是在一個(gè)類中,有相同的函數(shù)名稱,但形參不同的函數(shù)。
- 方法的重載的規(guī)則:
- 方法名稱必須相同。
- 參數(shù)列表必須不同(個(gè)數(shù)不同,或類型不同、參數(shù)排列順序不同等)。
- 方法的返回類型可以相同也可以不相同。
- 僅僅返回類型不同不足以成為方法的重載。
- 實(shí)現(xiàn)理論:
- 方法名稱相同時(shí),編譯器會(huì)根據(jù)調(diào)用方法的參數(shù)個(gè)數(shù)、參數(shù)類型等去逐個(gè)匹配,以選擇對(duì)應(yīng)的方法如果匹配失敗,則編譯器報(bào)錯(cuò)。
練習(xí):
package com.lxw.method;
public class Demo02 {
public static void main(String[] args) {
int max = max(50, 20);
System.out.println(max);
}
//方法可以無(wú)限制重名,但是確保數(shù)據(jù)類型不同
public static int max(int num1,int num2){
int result=0;
if (num1>num2){
result=num1;
System.out.println("num1>num2");
}else if (num1==num2){
System.out.println("num1==num2");
return 0; //也可以用來(lái)終止方法
}else {
result=num2;
System.out.println("num1<num2");
}
return result;
}
// public static double max(double num1,double num2){
//// int result=0;
////
////
//// if (num1>num2){
//// result=num1;
//// System.out.println("num1>num2");
//// }else if (num1==num2){
//// System.out.println("num1==num2");
//// return 0; //也可以用來(lái)終止方法
//// }else {
//// result=num2;
//// System.out.println("num1<num2");
//// }
//// return result;
// }
public static int max(int num1,int num2,int num3){
int result=0;
if (num1>num2){
result=num1;
System.out.println("num1>num2");
}else if (num1==num2){
System.out.println("num1==num2");
return 0; //也可以用來(lái)終止方法
}else {
result=num2;
System.out.println("num1<num2");
}
return result;
}
}
package com.lxw.method;
public class Demo01 {
//main方法
public static void main(String[] args) {
//實(shí)際參數(shù):實(shí)際調(diào)用傳遞給他的參數(shù)
int add = add(1, 5,6);
System.out.println(add);
}
//加法
//形式參數(shù),用來(lái)定義作用的
//public是公共的,所有人都可以用它
public static int add(int a, int b) { //如果要直接使用這個(gè)方法,static讓這個(gè)方法成為類方法,不然無(wú)法直接在主方法調(diào)用,
// 定義一個(gè)方法名字加類型如果是void就沒(méi)有返回值,如果有就有返回值
return a + b; //如果方法存在返回值的話,一定要用return返回如果是void就不用返回了
}
//方法的重載
public static int add(int a,int b,int c){
return a+b+c;
}
}
命令行傳參
有時(shí)候你希望運(yùn)行一個(gè)程序時(shí)候再傳遞給它消息。這要靠傳遞命令行參數(shù)給main()函數(shù)實(shí)現(xiàn)。
package com.lxw.method;
public class Demo03 {
public static void main(String[] args) {
for(int i=0;i<args.length;i++){
System.out.println("args["+i+"]:"+args[i]);
}
}
}

2021.6.3可變參數(shù)(也叫不定項(xiàng)參數(shù))
- jdk1.5開始,java支持傳遞同類型的可變參數(shù)給一個(gè)方法。
- 在方法聲明中,在指定參數(shù)類型后加一個(gè)省略號(hào)(……)。
- 一個(gè)方法中只能指定一個(gè)可變參數(shù),它必須時(shí)方法的最后一個(gè)參數(shù),任何普通的參數(shù)必須在它之間聲明。
- 練習(xí):
package com.lxw.method;
public class Demo04 {
public static void main(String[] args) {
//調(diào)用可變參數(shù)
printMax(1,2,23,2,5,4);
printMax(new double[]{1,2,3,4,5,6,});
Demo04 demo04 = new Demo04();
demo04.test(1,2,3,4,5,6);
demo04.test(2,11,22,33,44,55);
}
public static void printMax(double... numbers){
if (numbers.length==0){
System.out.println("你沒(méi)有輸出任何數(shù)");
return;
}
double result=numbers[0];
//排序
for (int i = 1; i < numbers.length; i++) {
if (numbers[i]>result){
result=numbers[i];
}
}
System.out.println("最大的值是:"+result);
}
public void test(double a,int ... i){//可變參數(shù),只能放在最后面
System.out.println(i[0]);
System.out.println(i[1]);
System.out.println(i[2]);
System.out.println(i[3]);
System.out.println(i[4]);
System.out.println(i[5]);
}
}
遞歸(重要,不推薦使用)
- A方法調(diào)用B方法,我們很容易理解!
- 遞歸就是:A方法調(diào)用A方法!就是自己調(diào)用自己
- 利用遞歸可以用很簡(jiǎn)單的程序來(lái)解決一些復(fù)雜的問(wèn)題。
- 它通常把一個(gè)大型復(fù)雜的問(wèn)題層層轉(zhuǎn)化為一個(gè)與原問(wèn)題相似的規(guī)模較小的問(wèn)題來(lái)求解,遞歸策略只需少量的程序就可描述出解題過(guò)程所需要的多次重復(fù)計(jì)算,大大減少了程序的代碼量。遞歸的能力在于用有限的語(yǔ)句來(lái)定義對(duì)象的無(wú)限集合。
- 遞歸結(jié)構(gòu)包括兩個(gè)部分:
- 遞歸頭:什么時(shí)候不調(diào)用自身方法。如果沒(méi)有頭,將陷入死循環(huán)。
- 遞歸體:什么時(shí)候需要調(diào)用自身方法。
- 程序從前往后運(yùn)行,值從后往前傳遞。
- 想要使用遞歸,前提是基數(shù)較小(像,100,1000,1000...這些就比較大了),基數(shù)較大會(huì)導(dǎo)致棧溢出!

練習(xí):
作業(yè):

package com.lxw.method;
import java.util.Scanner;
public class DiGuiZuoYe01 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (scanner.hasNextDouble()) {
double a = scanner.nextDouble();
String c = scanner.next();
double b = scanner.nextDouble();
switch(c){
case "+":
add(a,b);
break;
case "-":
minus(a,b);
break;
case "*":
multiply(a,b);
break;
case "/":
except(a,b);
break;
}
System.out.println("輸入任意字母退出");
}
scanner.close();
}
public static void add(double num1, double num2) {
System.out.println( num1 + num2);
}
public static void minus(double num1, double num2) {
System.out.println( num1 - num2);
}
public static void multiply(double num1, double num2) {
System.out.println( num1 * num2);
}
public static void except(double num1, double num2) {
if(num2==0){
System.out.println("分母不能為0");
}else{
System.out.println( num1 / num2);
}
}
}
//————————————————
// 版權(quán)聲明:本文為CSDN博主「ppp_melody」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請(qǐng)附上原文出處鏈接及本聲明。
// 原文鏈接:https://blog.csdn.net/ppp_melody/article/details/116515970
// public static void main(String[] args) {
//
// Scanner a1 = new Scanner(System.in);
// Scanner b1 = new Scanner(System.in);
// int a=a1.nextInt();
// int b=b1.nextInt();
// int add = add(a, b);
// int jian = jian(a, b);
// int chen = chen(a, b);
// int chu= chu(a, b);
// System.out.println("a+b="+add);
// System.out.println("a-b="+jian);
// System.out.println("a*b="+chen);
// System.out.println("a/b="+chu);
//
// }
// public static int add(int a,int b){
// return a+b;
// }
// public static int jian(int a,int b){
// return a-b;
// }
// public static int chen(int a,int b){
// return a*b;
// }
// public static int chu(int a,int b){
// return a/b;
// }
2021.6.5什么是數(shù)組
數(shù)組的定義:
- 數(shù)組是相同類型的數(shù)據(jù)的有序集合
- 數(shù)組描述的是相同類型的諾干個(gè)數(shù)據(jù),按照一定的先后次序排列組合而成。
- 其中,每一個(gè)數(shù)據(jù)稱作一個(gè)數(shù)組元素,每個(gè)數(shù)組元素可以通過(guò)一個(gè)下標(biāo)來(lái)訪問(wèn)它們。
數(shù)組聲明創(chuàng)建
首先必須聲明數(shù)組變量,才能在程序中使用數(shù)組。下面是聲明數(shù)組變量的語(yǔ)法:
dataType[] arrayRefVar; //首選的方法 或 dataType arrayRefVar[]; //效果相同,但不是首選方法
Java語(yǔ)言使用new操作符來(lái)創(chuàng)建數(shù)組,語(yǔ)法如下:
dataType[] arrayRefVar=new dataType[arraySize];
數(shù)組的元素是通過(guò)索引訪問(wèn)的,數(shù)組索引從0開始。
獲取數(shù)組長(zhǎng)度:
arrays.lenth
練習(xí):
package com.lxw.array;
public class ArrayDemo01 {
//變量的類型 變量的名字 = 變量的值;
//數(shù)組類型
public static void main(String[] args) {
int[] nums;//1.數(shù)組的定義,聲明一個(gè)數(shù)組
// int nums1[];//C++與C#里的定義
nums = new int[10];//創(chuàng)建一個(gè)數(shù)組
//給數(shù)組元素中賦值
nums[0]=1;
nums[1]=2;
nums[2]=3;
nums[3]=4;
nums[4]=5;
nums[5]=6;
nums[6]=7;
nums[7]=8;
nums[8]=9;
nums[9]=10;
int sums=0;
for (int i = 0; i < nums.length; i++) {
sums=sums+nums[i];
}
System.out.println("數(shù)組的和為:"+sums);
}
}
2021.6.6 內(nèi)存分析(重要)
Java內(nèi)存分析

寫代碼畫圖分析內(nèi)存

三種初始化
- 靜態(tài)初始化
- 動(dòng)態(tài)初始化
int[] a={1,2,3};
Man[] mans={new Man(1,1),new Man(2,2)};
- 數(shù)組的默認(rèn)初始化
- 數(shù)組引用類型,它的元素相當(dāng)于類的實(shí)例變量,因此數(shù)組一經(jīng)分配空間,其中的每個(gè)元素被按照實(shí)例變量同樣的方式被隱式初始化。
int[] a=new int[2]; a[0]=1; a[1]=2;
練習(xí):
package com.lxw.array;
public class ArrayDemo02 {
public static void main(String[] args) {
//靜態(tài)初始化:創(chuàng)建+賦值
int[] a={1,2,3,4,5,6,7,8};
System.out.println(a[0]);
//引用類型
Man[] mans={new Man(),new Man()};
//動(dòng)態(tài)初始化:包括默認(rèn)初始化
int[] b=new int[10];
b[0]=10;
b[1]=10;
System.out.println(b[0]);
System.out.println(b[1]);
System.out.println(b[2]);
System.out.println(b[3]);
}
}
下標(biāo)及越界小結(jié)
數(shù)組的四個(gè)基本特點(diǎn):
- 其長(zhǎng)度是確定的。數(shù)組一旦被創(chuàng)建,它的大小就是不可改變的。
- 其元素必須是相同類型,不允許出現(xiàn)混合類型。
- 數(shù)組中的元素可以是任何數(shù)據(jù)類型,包括基本類型和引用類型。
- 數(shù)組變量引用類型,數(shù)組也可以看成是對(duì)象,數(shù)組中的每個(gè)元素相當(dāng)于該對(duì)象的成員變量。數(shù)組本身就是對(duì)象,Java中對(duì)象是在堆中的,因此數(shù)組無(wú)論保存原始類型還是其他對(duì)象類型,數(shù)組對(duì)象本身實(shí)在堆中的。
- 數(shù)組的邊界:
- 下標(biāo)的合法區(qū)間:[0,lenth-1],如果越界就會(huì)報(bào)錯(cuò):
public static void main(String[] args){
int[] a=new int[2];
System.out.println(a[2]);
}
ArrayIndexOutOfBoundsException:數(shù)組下標(biāo)越界異常!
小結(jié):
- 數(shù)組是相同數(shù)據(jù)類型(數(shù)據(jù)類型可以為任意類型)的有序集合
- 數(shù)組也是對(duì)象。數(shù)組元素相當(dāng)于對(duì)象的成員變量
- 數(shù)組長(zhǎng)度的確定的,不可改變的。如果越界,則報(bào):ArrayIndexOutOfBounds
練習(xí):
public static void main(String[] args) {
//靜態(tài)初始化:創(chuàng)建+賦值
int[] a={1,2,3,4,5,6,7,8};
System.out.println(a[0]);
for (int i = 0; i < a.length; i++) {
System.out.println(a[i]);
}
2021.6.7數(shù)組的使用
- 普通的for循環(huán)
- For-Each循環(huán)
- 數(shù)組作方法入?yún)?/li>
- 數(shù)組作返回值-
練習(xí):
package com.lxw.array;
public class ArrayDemo03 {
public static void main(String[] args) {
int[] a1={1,2,3,4,5,6};
//數(shù)組遍歷一遍
for (int i = 0; i < a1.length; i++) {
System.out.println(a1[i]);
}
System.out.println("=========================");
//求累加和
int sum=0;
for (int i = 0; i < a1.length; i++) {
sum=sum+a1[i];
}
System.out.println(sum);
System.out.println("========================");
//查找最大元素
int max=a1[0];
for (int i = 0; i < a1.length; i++) {
if (a1[i]>max){
max=a1[i];
}
}
System.out.println("max為:"+max);
}
}
package com.lxw.array;
public class ArrayDemo04 {
public static void main(String[] args) {
int[] a={1,2,3,4,5,6};
// //jdk1.5,沒(méi)有下標(biāo),適合打印
// for (int i : a) {
// System.out.println(i);
//
// }
printArray(a);
int[] reverse=reverse(a);
printArray(reverse);
}
//打印按鈕元素
public static void printArray(int[] a){
for (int i = 0; i < a.length; i++) {
System.out.print(a[i]+" ");
}
}
//反轉(zhuǎn)按鈕
public static int[] reverse(int[] a){
int[] result=new int[a.length];
for (int i=0,j=result.length-1;i< a.length;i++,j--){
result[j]=a[i];
}
return result;
}
}
二維數(shù)組
- 多維數(shù)組可以看成是數(shù)組的數(shù)組,比如二維數(shù)組就是一個(gè)特殊的一維數(shù)組,其每一個(gè)元素都是一個(gè)一維數(shù)組。
- 二維數(shù)組
int a[][]=new int[2][5];
- 解析:以上二維數(shù)組a可以看成一個(gè)兩行五列的數(shù)組。
- 思考:多維數(shù)組的使用?
num[1][0];
練習(xí):
package com.lxw.array;
import static com.lxw.array.ArrayDemo04.printArray;
public class ArrayDemo05 {
public static void main(String[] args) {
int[][] array={{1,2},{2,3},{3,4},{4,5}};
// printArray(array[0]);
// System.out.println(array[2][0]);
// System.out.println(array[2][1]);
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array[i].length ; j++) {
System.out.println(array[i][j]);
}
}
}
}
2021.6.8 Arrays類
- Arrays類
- 數(shù)組工具類java.util.Arrays
- 由于數(shù)組對(duì)象本身并沒(méi)有什么方法可以供我們調(diào)用,但API中提供了一個(gè)工具類Arrays供我們使用,從而可以對(duì)數(shù)據(jù)對(duì)象進(jìn)行一些基本的操作。
- 查看JDK幫助文檔
- Arrays類中的方法都是static修飾的靜態(tài)方法,在使用的時(shí)候可以直接使用類名進(jìn)行調(diào)用,而“不用”使用對(duì)象來(lái)調(diào)用(注意:“是不用”而不是“不能”)
- 具有以下常用功能:
- 給數(shù)組賦值:通過(guò)fill方法。
- 對(duì)數(shù)組排序:通過(guò)sort方法按升序。
- 比較數(shù)組:通過(guò)equals方法比較數(shù)組中元素值是否相等。
- 查找數(shù)組元素:通過(guò)binarySearch方法能對(duì)排序好的數(shù)組進(jìn)行二分查找法操作。
練習(xí):
package com.lxw.array;
import java.util.Arrays;
public class ArrayDemo06 {
public static void main(String[] args) {
int[] a={1,2,3,567,548,788,842,666,777,235};
System.out.println(a);//[I@4554617c哈希值,地址值
//toString打印數(shù)組元素
System.out.println(Arrays.toString(a));
printArray(a);
Arrays.sort(a);//對(duì)數(shù)組進(jìn)行排序
System.out.println(Arrays.toString(a));
//Arrays.fill(a,0);//對(duì)數(shù)組進(jìn)行賦值
Arrays.fill(a,2,4,0);//對(duì)數(shù)組進(jìn)行賦值
System.out.println(Arrays.toString(a));
}
public static void printArray(int[] a){
for (int i = 0; i < a.length; i++) {
if (i==0){
System.out.print("[");
}
if (i==a.length-1){
System.out.print(a[i]+"]");
}else{
System.out.print(a[i]+", ");
}
}
}
}
冒泡排序
- 冒泡排序無(wú)疑是最為出名的排序算法之一,還有其他八大排序!
- 冒泡的代碼還是相當(dāng)簡(jiǎn)單的,兩層循環(huán),外層冒泡輪數(shù),里層次比較,江湖中人盡皆知。
- 我們看到嵌套循環(huán),應(yīng)該立馬就可以得出這個(gè)算法的時(shí)間復(fù)雜度為O(n2)。
- 思考:如何優(yōu)化?
練習(xí):
package com.lxw.array;
import java.util.Arrays;
public class ArrayDemo07 {
//冒泡排序
//1.比較數(shù)組中,兩個(gè)相鄰的元素,如果第一個(gè)數(shù)比第二個(gè)數(shù)大,我們就交換它們的位置
//2.每一次比較,都會(huì)產(chǎn)生一個(gè)最大,或者最小的數(shù)字
//3.下一輪則可以少一次排序!
//4.依次循環(huán),直到結(jié)束!
public static void main(String[] args) {
int[] a={1,4,5,2,7,9,78,44};
int[] sort = sort(a);//調(diào)用完我們自己寫的排序方法后,返回一個(gè)排序后的數(shù)組
System.out.println(Arrays.toString(a));
}
public static int[] sort(int[] a){
//臨時(shí)變量
int temp=0;
//外層循環(huán),判斷我們這個(gè)要走多久走多少次
for (int i = 0; i < a.length-1; i++) {
boolean flag=false;//通過(guò)flag標(biāo)識(shí)位減少?zèng)]有意義的比較
//內(nèi)層循環(huán),比較判斷兩個(gè)數(shù)。如果第一個(gè)數(shù),比第二個(gè)數(shù)大,則交換位置
//i就是走過(guò)的次數(shù)啊 所以j就不用再去比較i之前已經(jīng)比較過(guò)的了
for (int j = 0; j <a.length-1-i ; j++) {
if (a[j+1]<a[j]){ //a[j+1]后一個(gè)數(shù),a[j]前一個(gè)數(shù)
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
flag=true;
}
}
if (flag==false){
break;
}
}
return a;
}
}
2021.6.9稀疏數(shù)組(復(fù)習(xí))
- 需求:編寫五子棋游戲中,有存盤退出和續(xù)上盤的功能

- 分析問(wèn)題:因?yàn)樵摱S數(shù)組的很多值是默認(rèn)值0,因此記錄了很多沒(méi)有意義的數(shù)據(jù)。
- 解決:稀疏數(shù)組
- 稀疏數(shù)組介紹:
- 當(dāng)一個(gè)數(shù)組中大部分元素為0,或者為同一值的數(shù)組時(shí),可以使用稀疏數(shù)組來(lái)保存該數(shù)組。
- 稀疏數(shù)組的處理方式是:
- 記錄數(shù)組一共有幾列幾行,有多少個(gè)不同值
- 把具有不同值的元素和行列及值記錄在一個(gè)小規(guī)模的數(shù)組中,從而縮小程序的規(guī)模
如下圖:左邊是原始數(shù)據(jù),右邊是稀疏數(shù)組

總結(jié)
本篇文章就到這里了,希望能給各位帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
Mybatis-Plus的SQL語(yǔ)句組拼原理說(shuō)明
這篇文章主要介紹了Mybatis-Plus的SQL語(yǔ)句組拼原理說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-06-06
MyBatis 執(zhí)行動(dòng)態(tài) SQL語(yǔ)句詳解
大家對(duì)mybatis執(zhí)行任意sql語(yǔ)句都了解,那么MyBatis執(zhí)行動(dòng)態(tài)SQL語(yǔ)句呢?下面腳本之家小編給大家解答下mybatis執(zhí)行動(dòng)態(tài)sql語(yǔ)句的方法,非常不錯(cuò),感興趣的朋友參考下吧2016-08-08
java組件commons-fileupload實(shí)現(xiàn)文件上傳
這篇文章主要介紹了java借助commons-fileupload組件實(shí)現(xiàn)文件上傳,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-10-10
spring?@Conditional的使用與擴(kuò)展源碼分析
這篇文章主要介紹了spring?@Conditional的使用與擴(kuò)展,這里需要注意如果Condition返回的是false,那么spirng就不會(huì)對(duì)方法或類進(jìn)行解析,具體源碼分析跟隨小編一起看看吧2022-03-03
SpringBoot全局異常處理之多個(gè)處理器匹配順序(最新推薦)
這篇文章主要介紹了SpringBoot全局異常處理之多個(gè)處理器匹配順序(最新推薦),調(diào)試源碼可見(jiàn)匹配順序?yàn)椋寒惓蛹?jí)高者優(yōu)先,再清楚點(diǎn),子類異常處理器優(yōu)先,本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2024-03-03
Java中使用DOM4J生成xml文件并解析xml文件的操作
這篇文章主要介紹了Java中使用DOM4J來(lái)生成xml文件和解析xml文件的操作,今天通過(guò)代碼給大家展示了解析xml文件和生成xml文件的方法,需要的朋友可以參考下2021-09-09
java9的JShell小工具和編譯器兩種自動(dòng)優(yōu)化方法
這篇文章主要介紹了java9的JShell小工具和編譯器兩種自動(dòng)優(yōu)化方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-07-07

