亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

方法spjg未定義的類型?

方法spjg未定義的類型?

黃森huang 2016-09-19 15:17:30
package java2;import java.util.*;import java.io.*;public class Shipinglianxi?{ public static void main(String[]args)throws Exception//拋出異常 { Spg1 shipin=new Spg1(); //對象shipin的創建,aa對象(構造方法Spg1)也一并創建 BufferedReader sr=new BufferedReader(new InputStreamReader(System.in)); while (true) { System.out.println("請按提示選擇以下功能"); System.out.println("添加食品請按1"); System.out.println("查找食品信息請按2"); System.out.println("修改食品價格請按3"); System.out.println("刪除食品請按4"); System.out.println("退出請按0"); String srt=sr.readLine();//readLine讀取一行 if(srt.equals("1")) { System.out.println("請輸入食品編號"); String bh=sr.readLine();//sr.next() System.out.println("請輸入食品名稱"); String mc=sr.readLine(); System.out.println("請輸入食品價格"); double jg=Double.parseDouble(sr.readLine()); //Float.parseFloat強行將sr.readLine()字符串格式轉換為double形式 sp sp=new sp(bh,mc,jg); shipin.addsp(sp); //添加對象sp } else if(srt.equals("2"))//查詢食品信息 { System.out.println("請輸入食品編號"); String bh=sr.readLine(); shipin.spxx(bh); ? ?//調用spxx方法 } else if(srt.equals("3")) { System.out.println("請輸入食品編號"); String bh=sr.readLine(); System.out.println("請輸入新的價格"); double jg=Double.parseDouble(sr.readLine()); shipin.spjg(bh,jg);//報錯:The method spjg(String, double) is undefined for the type Spg1求大神指點哪里錯誤? } else if(srt.equals("4"))//刪除食品 { System.out.println("請輸入食品編號"); String bh=sr.readLine(); shipin.delsp(bh); } else if(srt.equals("0")) { System.out.println("感謝您的使用,再見"); System.exit(0); } else { System.out.println("輸入有誤"); } } }}class sp{ private String bianhao; private String mingcheng; private double jiage; sp(String bianhao,String mingcheng,double jiage)//初始化成員變量 { this.bianhao=bianhao; this.mingcheng=mingcheng; this.jiage=jiage; } public void setBianhao(String bianhao) { //封裝變量使用set和get this.bianhao=bianhao; } public void setMingcheng(String mingcheng)//封裝變量使用set和get { //使用set規定取值范圍有參數 this.mingcheng=mingcheng; } public void setJiage(double jiage) //封裝變量使用set和get { this.jiage=jiage; } public String getBianhao() //使用get,調用時取出值 { return bianhao; } public String getMingcheng() { return mingcheng; } public double getJiage() { return jiage; }}class Spg1{ private ArrayList aa=null; Spg1() { aa=new ArrayList();//創建aa對象 //使用集合類來統計食品名稱,編號等對象 //所以要使用構造方法開始時就初始化所有對象 } public void addsp(sp sp)//增加食品 { aa.add(sp); System.out.println("食品添加成功"); } public void spxx(String bh)//食品查詢系統 { int i;//要將i值定義在for外面 for( i=0;i<aa.size();i++) { sp sp=(sp)aa.get(i); if(sp.getBianhao().equals(bh)) //sp.getBianhao()方法 { System.out.println("該食品的信息為:"); System.out.println("食品編號:"+bh); System.out.println("食品名稱:"+sp.getMingcheng()); System.out.println("食品價格:"+sp.getJiage()); break; } } if(i==aa.size())//上面for循環退出時i的值一定小于aa.size(), //如果不是那么一定沒有該食品 { System.out.println("對不起,查無此食品"); } } private void spja(String bh,double jg)//修改食品價格 { int i; for(i=0;i<aa.size();i++) { sp sp=(sp)aa.get(i);//遍歷對象 if(sp.getBianhao().equals(bh)) { sp.setJiage(jg);//重新取值 System.out.println("價格修改成功"); break; } } if(i==aa.size()) { System.out.println("對不起,查無此食品"); } } public void delsp(String bh)//食品刪除系統 { int i; if(aa.size()==0) { System.out.println("沒有食品記錄"); } for(i=0;i<aa.size();i++) { sp sp=(sp)aa.get(i);//遍歷對象 if(sp.getBianhao().equals(bh)) { aa.remove(i); System.out.println("移除成功"); break; } } if(i==aa.size()&&aa.size()!=0)//保證對象不能為空aa.size()!=0 { System.out.println("對不起,查無此食品"); } }}
查看完整描述

2 回答

?
黃森huang

TA貢獻7條經驗 獲得超1個贊

程序使用方法錯誤:Spg1類中的更改食品價格方法是spja但調用的是spjg

查看完整回答
1 反對 回復 2016-09-19
?
Panda小潘

TA貢獻2條經驗 獲得超0個贊

沒有聲明spjg這個方法,是不是寫錯字了...

查看完整回答
反對 回復 2016-09-19
  • 2 回答
  • 0 關注
  • 1621 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號