1、java是強(qiáng)匹配的,調(diào)用方法,對(duì)應(yīng)的參數(shù)必須要有值,如果不是必須傳的,意思是你可能不需要用的,可以傳null
10年積累的成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站策劃后付款的網(wǎng)站建設(shè)流程,更有通道免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
2、或者改造原有的方法參數(shù),把多余的參數(shù)去掉
3、或者另外寫(xiě)一個(gè)方法,少參數(shù)的,然后該方法內(nèi)部,調(diào)用原來(lái)的方法
4、代碼截圖如下:
5、看代碼,13行的,就相當(dāng)于調(diào)用少一個(gè)參數(shù)的
拓展資料:
如題,有一個(gè)方法里兩個(gè)形參,我另一個(gè)文件類(lèi)中一個(gè)方法想要那個(gè)方法的返回值,可是第二個(gè)參數(shù)在這里用不到,能否只傳第一個(gè)參數(shù) 如何實(shí)現(xiàn),前提這個(gè)類(lèi)不能繼承后重寫(xiě)方法,因?yàn)槎嗳撕贤瑢?xiě)的。
解決方案
不可以,變通的辦法是再寫(xiě)一個(gè)只有一個(gè)參數(shù)的函數(shù)重載形式,在其中給另一個(gè)參數(shù)一個(gè)預(yù)設(shè)值,間接調(diào)用。
解決方案二:
一個(gè)Action調(diào)用兩個(gè)不同的方法
解決方案三:
調(diào)用的時(shí)候給一個(gè)無(wú)影響的值
解決方案四:
講道理的話是不能這樣做的,不過(guò)如果你傳的第二個(gè)參數(shù)如果對(duì)于當(dāng)前調(diào)用時(shí)沒(méi)有意義也是可以傳一個(gè)值的。
解決方案五:
首先,Java語(yǔ)法規(guī)定了方法的參數(shù)列表,那么調(diào)用的時(shí)候就需要按照方法定義傳遞給足夠的參數(shù),你那種需要少傳參的話可以重載方法,不要定義那么多參數(shù)就可以了。
解決方案六:
你一個(gè)方法傳入兩個(gè)參數(shù),但如果你只調(diào)用一個(gè),那么另外一個(gè)參數(shù)你讓人家多尷尬,你讓人家尷尬了,人家也不會(huì)讓你好過(guò)的,因此就給你報(bào)錯(cuò)啊,當(dāng)然你可以像樓上所說(shuō),傳入一個(gè)無(wú)影響的參數(shù)進(jìn)去,但這又有什么意義,還造成代碼的浪費(fèi),你這個(gè)方法每調(diào)用一次,就造成一次浪費(fèi),因此,最好的方法就是傳入一個(gè)參數(shù),寫(xiě)一個(gè)重載方法。初學(xué)者經(jīng)驗(yàn)不足,互相指教~
解決方案七:
既然用不到第二個(gè)參數(shù),最簡(jiǎn)單的,給個(gè)無(wú)關(guān)痛癢的初始值。
解決方案八:
方法定義2個(gè)參數(shù),在方法體內(nèi)提供判斷參數(shù),看傳入的參數(shù)是否為null,調(diào)用方法時(shí),只傳入一個(gè)值,另一個(gè)是null就行。
解決方案九:
方法 重載一下 就好了。
1、獲取從頁(yè)面?zhèn)鬟^(guò)來(lái)的參數(shù)。
2、把參數(shù)添加到Map集合中。
3、進(jìn)行參數(shù)類(lèi)型的判斷和拼接。
4、這樣即可用java配置兩個(gè)參數(shù)代碼。
首先,手動(dòng)畫(huà)一個(gè)小烏龜,如下:
然后,按照J(rèn)ava繪圖基本步驟一步步來(lái)。
swing 編程步驟:
1. 繼承JFrame
2. 定義組件
3.創(chuàng)建組件(構(gòu)造函數(shù))
4.添加組件
5.對(duì)窗體設(shè)置
6.顯示窗體
最終效果如下:
代碼如下:
/**?
*?功能:畫(huà)一個(gè)烏龜?
*/??
package?com.test1;??
import?java.awt.*;??
import?javax.swing.*;??
public?class?MyTortoise??extends?JFrame{??
MyPanel2?mp?=?null;??
//構(gòu)造函數(shù)??
public?MyTortoise(){??
mp?=?new?MyPanel2();??
this.add(mp);??
this.setTitle("小烏龜,丑丑噠");??
this.setSize(400,300);??
this.setVisible(true);??
this.setLocation(300,200);??
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);??
}??
public?static?void?main(String[]?args)?{??
MyTortoise?mtg?=?new?MyTortoise();??
}?????
}??
//我的面板。只有JPanel有畫(huà)圖方法,JFrame沒(méi)有,故必須在JFrame中添加JPanel??
class?MyPanel2?extends?JPanel{??
//定義一個(gè)烏龜??
Tortoise?t?=?null;??
//構(gòu)造函數(shù)??
public?MyPanel2(){????
t?=?new??Tortoise(100,100);??
}??
//畫(huà)烏龜??
public?void?drawTortoise(int?x,?int?y,?Graphics?g){??
//1.畫(huà)臉??
g.setColor(Color.green);??
g.fillOval(x+60,?y,?30,?15);??
//2.畫(huà)左眼??
g.setColor(Color.black);??
g.fillOval(x+65,?y+3,?5,?5);??
//3.畫(huà)右眼??
g.fillOval(x+78,?y+3,?5,?5);??
//4.畫(huà)脖子??
g.setColor(Color.green);??
g.fillOval(x+70,?y,?10,?42);??
//5.畫(huà)烏龜殼??
g.setColor(Color.red);??
g.fillOval(x+40,?y+40,?70,?100);??
//6.畫(huà)左上腳??
g.setColor(Color.green);??
g.fillOval(x+15,?y+60,?30,?10);??
//7.畫(huà)右上腳??
g.fillOval(x+105,?y+60,?30,?10);??
//8.畫(huà)左下腳??
g.fillOval(x+15,?y+110,?30,?10);??
//9.畫(huà)右下腳??
g.fillOval(x+105,?y+110,?30,?10);??
//10.畫(huà)尾巴??
g.setColor(Color.black);??
g.drawLine(x+70,y+140,x+130,y+210);??
g.drawOval(x+95,?y+150,?30,?30);??
}??
//覆蓋JPanel的paint方法??
//Graphics?是繪圖的重要類(lèi)。你可以把他理解成一只畫(huà)筆??
public?void?paint(Graphics?g){??
//1.調(diào)用父類(lèi)函數(shù)完成初始化任務(wù)??
//這句話不能少??
super.paint(g);??
//2.畫(huà)烏龜,調(diào)用方法即可??
this.drawTortoise(50,?50,?g);??
}??
}??
//定義一個(gè)烏龜類(lèi)??
class?Tortoise?{??
//表示烏龜?shù)臋M坐標(biāo)??
int?x?=?0;??
//表示烏龜?shù)目v坐標(biāo)??
int?y?=?0;??
public?int?getX()?{??
return?x;??
}??
public?void?setX(int?x)?{??
this.x?=?x;??
}??
public?int?getY()?{??
return?y;??
}??
public?void?setY(int?y)?{??
this.y?=?y;??
}??
public?Tortoise(int?x,?int?y){??
this.x?=?x;??
this.y?=?y;??
}??
}
public class Student{
private String name;
private String studentNo;
private float score;
//get方法
//set方法
public static void main(String[] args){
//你可以用學(xué)生數(shù)組或者ListStudent來(lái)存數(shù)據(jù)
//我示范一下用數(shù)組存數(shù)據(jù)的 當(dāng)然你用list來(lái)存的話 后面的比較 更加簡(jiǎn)單 只需要
//實(shí)現(xiàn)一個(gè)比較器即可
Student[] students = new Student[2]
Student a =new Student();
a.setName("a");
a.setStudentNo("001");
a.setScore(98);
students[0]=a;
Student b = new Student();
b.setName("b");
b.setStudentNo("002");
b.setScore(87);
sudents[1] = b;
。。。。。。
//然后用冒泡排序根據(jù)學(xué)生的成績(jī)判斷 算法你自己決定 冒泡還是挺好用的
for(int i =0,len =students.length ;ilen;i++){
for(int j=i+1,len;=students.length;jlen;j++){
if(students[i].getScore()students[j].getScore()){
Student temp =students[i];
students[i] = students[j];
students[j]=temp;
}
}
}
///最后輸出結(jié)果
for(){
System.out.println();
}
}
首先用vim 在linux下編寫(xiě)一個(gè)名為T(mén)est.java的文件,代碼如下:
class Test{ public static void main(String []args){ System.out.println("test input main arguments"); System.out.println(args[0]+" "+args[1]); System.out.println("end of main"); } }
代碼很簡(jiǎn)單,只有一個(gè)main函數(shù)用來(lái)輸出我輸入的前兩個(gè)參數(shù),注意前兩個(gè)參數(shù)如果不輸入會(huì)拋數(shù)組越界 的異常。
vim編輯完后按esc進(jìn)入命令模式,然后shift+ZZ保存并退出。然后通過(guò)javac Test.java 即可對(duì)該文件進(jìn)行編譯,編譯會(huì)可以看到在該目錄下生成了一個(gè)Test.class文件。
編譯時(shí)沒(méi)有拋出異常說(shuō)明代碼成功編譯,接下來(lái)看看怎么運(yùn)行吧,其實(shí)也很簡(jiǎn)單,就通過(guò)如下命令即可:
java Test hello world
輸出結(jié)果是:
test input main arguments
hello world
end of main
是不是很簡(jiǎn)單,趕快打開(kāi)電腦實(shí)踐一下吧!
public class Vehicle {
private double speed;
private int power;
public double getSpeed() {
return speed;
}
public void setSpeed(double speed) {
this.speed = speed;
}
// 將參數(shù)p的值賦值給成員變量power
public void setPower(int p){
this.power = p;
}
public int getPower() {
return power;
}
//將參數(shù)s的值與成員變量speed的和賦值給成員變量speed
public double speedUp(int s) {
return this.speed = s + this.getSpeed();
}
//將成員變量speed與參數(shù)d的差賦值給成員變量speed
public double speedDown(int d) {
if(this.getSpeed() d) {
return 0;
}
return this.speed = this.getSpeed() - d;
}
}
public class User {
public static void main(String[] args) {
// 每個(gè)對(duì)象都會(huì)提供一個(gè)默認(rèn)的空構(gòu)造方法。
Vehicle car1 = new Vehicle();
Vehicle car2 = new Vehicle();
car1.setPower(128);
car2.setPower(76);
System.out.println("car1的功率是:"+car1.getPower( ) );
System.out.println("car2的功率是:"+car2.getPower( ) );
//car1調(diào)用speedUp( )方法將自己的speed的值增加80
car1.speedUp(80);
//car2調(diào)用speedUp( )方法將自己的speed的值增加100
car2.speedUp(100);
System.out.println("car1的速度是:"+car1.getSpeed( ) );
System.out.println("car2的速度是:"+car2.getSpeed( ) );
car1.speedDown(10);
car2.speedDown(20);
System.out.println("car1目前的速度是:"+car1.getSpeed( ) );
System.out.println("car2目前的速度是:"+car2.getSpeed( ) );
}
}