###16隨機點名器代碼實現
* A: 隨機點名器案例代碼
/*
隨機點名器,集合改進 (學生的姓名和年齡)
現實中有學生這個事物,使用定義類的形式,描述學生事物
屬性: 姓名,年齡
姓名存儲了數組, 將容器換成是集合
String[] s = {"",""};
集合中,存儲的是學生的姓名嗎? 應該存儲Student類型
存儲學生:
學生類型,存儲到集合中
總覽: 遍歷集合
隨機: 隨機數,做爲索引,到集合中找到元素
三個功能,共享的數據,集合容器,
定義三個方法,必須參數傳遞集合
*/
import java.util.ArrayList;
import java.util.Random;
public class CallName{
public static void main(String[] args){
//定義集合,存儲的是StudentName類型變量
ArrayList <StudentName> array = new ArrayList<StudentName>();
//調用添加方法
add (array);
//調用遍歷集合
printArrayList(array);
randomStudentName(array);
}
/*
隨機數,看成集合的索引,到集合中找到元素
*/
public static void randomStudentName(ArrayList<StudentName> array ){
Random r = new Random();
int number = r.nextInt( array.size());
//隨機數,索引,到集合中get
StudentName s = array.get(number);
System.out.println( s.name +" "+s.age);
}
/*
總覽學生的信息,遍歷集合
*/
public static void printArrayList(ArrayList<StudentName> array){
for(int i = 0 ; i < array.size();i++){
//存儲集合的時候, 集合.add(sn1) sn1 是StudentName類型變量
//獲取的時候,集合.get方法,獲取出來的是什麼, 仍是StudentName類型變量
StudentName s = array.get(i);
System.out.println(s.name+" "+s.age);
}
}
/*
定義方法,實現存儲學生的姓名和年齡
建立StudentName類型變量,存儲到集合中
*/
public static void add (ArrayList<StudentName> array){
//建立StudentName類型變量
StudentName sn1 = new StudentName();
StudentName sn2 = new StudentName();
StudentName sn3 = new StudentName();
StudentName sn4 = new StudentName();
StudentName sn5 = new StudentName();
sn1.name = "張三1";
sn1.age = 201;
sn2.name = "張三2";
sn2.age = 202;
sn3.name = "張三3";
sn3.age = 203;
sn4.name = "張三4";
sn4.age = 204;
sn5.name = "張三5";
sn5.age = 205;
//將StudentName變量,存儲到集合中
array.add(sn1);
array.add(sn2);
array.add(sn3);
array.add(sn4);
array.add(sn5);
}
}java
###17庫存案例分析加入集合
* A: 庫存案例分析加入集合
* a: 參見\day06\day06(面向對象\day06_source\對象內存圖.JPG數組
###18庫存案例添加商品信息
* A: 案例代碼
/*
定義,.描述商品的類
商品 4個屬性
商品名字 大小 價格 庫存
String double double int
定義類,類名Goods
這個類型的變量,存儲到集合中
*/
public class Goods{
//定義商品名字
String brand ;
//大小屬性
double size ;
// 價格屬性
double price ;
//庫存屬性
int count ;
}dom
/*
實現庫存管理案例:
1.存儲商品信息
存儲商品類型變量
將商品類型的變量,存儲到集合中
*/
//import java.util.ArrayList;
import java.util.*;
public class Shopp{
public static void main(String[] args){
//建立ArrayList集合,存儲Goods類型
ArrayList<Goods> array = new ArrayList<Goods>();
//調用添加商品信息的方法
addGoods(array);
}
/*
定義方法,將商品的信息存儲到集合中
集合是全部方法的共享數據,參數傳遞
*/
public static void addGoods (ArrayList<Goods> array){
//建立商品類型變量 Goods類型的變量
Goods g1 = new Goods();
Goods g2 = new Goods();
g1.brand = "MacBook";
g1.size = 13.3;
g1.price = 9999.99;
g1.count = 3;
g2.brand = "Thinkpad";
g2.size = 15.6;
g2.price = 7999.99;
g2.count = 1;
//Goods類型的變量,存儲到集合中
array.add(g1);
array.add(g2);
}
}ide
###19庫存案例查看庫存清單
* A: 案例代碼
/*
實現庫存管理案例:
1.存儲商品信息
存儲商品類型變量
將商品類型的變量,存儲到集合中
2.查看庫存清單
將集合進行遍歷, 獲取出集合中存儲的Goods類型變量
輸出每個Goods類型的屬性
計算求和: 總庫存,總金額
*/
//import java.util.ArrayList;
import java.util.*;
public class Shopp{
public static void main(String[] args){
//建立ArrayList集合,存儲Goods類型
ArrayList<Goods> array = new ArrayList<Goods>();
//調用添加商品信息的方法
addGoods(array);
}
/*
定義方法,查看庫存清單,遍歷集合
*/
public static void printStore(ArrayList<Goods> array){
//輸出表頭
System.out.println("----------商場庫存清單----------");
System.out.println("品牌型號 尺寸 價格 庫存數");
//定義變量,保存總庫存數,和總金額
int totalCount = 0 ;
double totalMoney = 0;
//遍歷集合
for(int i = 0 ; i < array.size(); i++){
//get(索引)獲取出集合中的元素,存儲的是Goods類,獲取的也是Goods類型
//使用Goods類型變量,接受get方法結果
Goods g = array.get(i);
System.out.println(g.brand+" "+g.size+" "+g.price+" "+g.count);
totalCount = totalCount+g.count;
totalMoney = totalMoney + g.count*g.price;
}
System.out.println("總庫存數: "+totalCount);
System.out.println("商品庫存總金額: "+totalMoney);
}
/*
定義方法,將商品的信息存儲到集合中
集合是全部方法的共享數據,參數傳遞
*/
public static void addGoods (ArrayList<Goods> array){
//建立商品類型變量 Goods類型的變量
Goods g1 = new Goods();
Goods g2 = new Goods();
g1.brand = "MacBook";
g1.size = 13.3;
g1.price = 9999.99;
g1.count = 3;
g2.brand = "Thinkpad";
g2.size = 15.6;
g2.price = 7999.99;
g2.count = 1;
//Goods類型的變量,存儲到集合中
array.add(g1);
array.add(g2);
}
}測試
###20庫存案例修改庫存清單及測試代碼的實現
* A: 案例代碼
/*
實現庫存管理案例:
1.存儲商品信息
存儲商品類型變量
將商品類型的變量,存儲到集合中
2.查看庫存清單
將集合進行遍歷, 獲取出集合中存儲的Goods類型變量
輸出每個Goods類型的屬性
計算求和: 總庫存,總金額
3.修改商品的庫存
集合遍歷 ,獲取出集合中存儲的Goods類型變量
變量調用Goods類的屬性count,值進行修改 (鍵盤輸入)
*/
//import java.util.ArrayList;
import java.util.*;
public class Shopp{
public static void main(String[] args){
//建立ArrayList集合,存儲Goods類型
ArrayList<Goods> array = new ArrayList<Goods>();
//調用添加商品信息的方法
addGoods(array);
//進入死循環中
while(true){
//調用選擇功能的方法,獲取到用戶輸入的功能序號
int number = chooseFunction();
//對序號判斷,若是=1 進入查看庫存功能 = 2 進入修改庫存功能 =3 結束
switch(number){
case 1:
//進入查看庫存,調用查看庫存的方法,傳遞存儲商品信息的集合
printStore(array);
break;
case 2:
//進入修改庫存功能,調用修改庫存的方法,傳遞集合
update(array);
break;
case 3:
return ;
default:
System.out.println("無此功能");
break;
}
}
}
/*
方法定義,修改庫存
鍵盤的輸入,將Goods中的屬性值,修改
*/
public static void update(ArrayList<Goods> array){
Scanner sc = new Scanner(System.in);
//遍歷集合,獲取集合中的每一個元素
for(int i = 0 ; i < array.size(); i++){
//集合方法get獲取的是集合的元素,元素類型Goods
Goods g = array.get(i);
System.out.println("請輸入"+g.brand+"的庫存數");
//Goods屬性,count進行修改
g.count = sc.nextInt();
}
}
/*
定義方法,實現選擇菜單,用戶根據功能選擇菜單
*/
public static int chooseFunction(){
System.out.println("-------------庫存管理------------");
System.out.println("1.查看庫存清單");
System.out.println("2.修改商品庫存數量");
System.out.println("3.退出");
System.out.println("請輸入要執行的操做序號:");
Scanner sc = new Scanner(System.in);
int number = sc.nextInt();
return number;
}
/*
定義方法,查看庫存清單,遍歷集合
*/
public static void printStore(ArrayList<Goods> array){
//輸出表頭
System.out.println("----------商場庫存清單----------");
System.out.println("品牌型號 尺寸 價格 庫存數");
//定義變量,保存總庫存數,和總金額
int totalCount = 0 ;
double totalMoney = 0;
//遍歷集合
for(int i = 0 ; i < array.size(); i++){
//get(索引)獲取出集合中的元素,存儲的是Goods類,獲取的也是Goods類型
//使用Goods類型變量,接受get方法結果
Goods g = array.get(i);
System.out.println(g.brand+" "+g.size+" "+g.price+" "+g.count);
totalCount = totalCount+g.count;
totalMoney = totalMoney + g.count*g.price;
}
System.out.println("總庫存數: "+totalCount);
System.out.println("商品庫存總金額: "+totalMoney);
}
/*
定義方法,將商品的信息存儲到集合中
集合是全部方法的共享數據,參數傳遞
*/
public static void addGoods (ArrayList<Goods> array){
//建立商品類型變量 Goods類型的變量
Goods g1 = new Goods();
Goods g2 = new Goods();
g1.brand = "MacBook";
g1.size = 13.3;
g1.price = 9999.99;
g1.count = 3;
g2.brand = "Thinkpad";
g2.size = 15.6;
g2.price = 7999.99;
g2.count = 1;
//Goods類型的變量,存儲到集合中
array.add(g1);
array.add(g2);
}
}對象