日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > windows >内容正文

windows

java 公交管理系统 代码_java公交线路管理系统

發(fā)布時(shí)間:2023/12/15 windows 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 公交管理系统 代码_java公交线路管理系统 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

展開(kāi)全部

//寫(xiě)了兩個(gè)小時(shí)啊,兄弟,要采納我啊

//Site(站點(diǎn)類)

package?transit;

import?java.util.ArrayList;

import?java.util.List;

public?class?Site

{

private?Integer?id;?//?給每個(gè)站點(diǎn)分配一個(gè)ID

private?String?name;?//?站點(diǎn)的名字62616964757a686964616fe4b893e5b19e31333332623933

private?List?list;?//?經(jīng)過(guò)該站點(diǎn)的線路

public?Site()

{

super();

}

public?Site(Integer?id,?String?name)

{

super();

this.id?=?id;

this.name?=?name;

this.list?=?new?ArrayList();

}

public?Integer?getId()

{

return?id;

}

public?void?setId(Integer?id)

{

this.id?=?id;

}

public?String?getName()

{

return?name;

}

public?void?setName(String?name)

{

this.name?=?name;

}

public?List?getList()

{

return?list;

}

public?void?setList(List?list)

{

this.list?=?list;

}

//?添加線路

public?boolean?addRoute(Route?route)

{

return?this.getList().add(route);

}

//?刪除線路

public?boolean?removeRoute(Route?route)

{

return?this.getList().remove(route);

}

@Override

public?String?toString()

{

return?name;

}

@Override

public?boolean?equals(Object?obj)

{

if?(obj?instanceof?Site)

{

Site?s?=?(Site)?obj;

return?this.id?==?s.getId()?&&?this.name.equals(s.getName());

}

return?false;

}

}//線路類

package?transit;

import?java.util.ArrayList;

import?java.util.Date;

import?java.util.List;

public?class?Route

{

private?Integer?id;?//?給每個(gè)線路分配一個(gè)ID

private?String?name;?//?線路名稱

private?List?list;?//?線路所包含的站點(diǎn)

private?Date?startDate;?//?發(fā)班時(shí)間,從首站點(diǎn)算起

private?Date?endDate;?//?收班時(shí)間,從首站點(diǎn)算起

public?Route()

{

super();

}

public?Route(Integer?id,?String?name,?Date?startDate,?Date?endDate)

{

super();

this.id?=?id;

this.name?=?name;

this.startDate?=?startDate;

this.endDate?=?endDate;

this.list?=?new?ArrayList();

}

public?Integer?getId()

{

return?id;

}

public?void?setId(Integer?id)

{

this.id?=?id;

}

public?String?getName()

{

return?name;

}

public?void?setName(String?name)

{

this.name?=?name;

}

public?List?getList()

{

return?list;

}

public?void?setList(List?list)

{

this.list?=?list;

}

public?Date?getStartDate()

{

return?startDate;

}

public?void?setStartDate(Date?startDate)

{

this.startDate?=?startDate;

}

public?Date?getEndDate()

{

return?endDate;

}

public?void?setEndDate(Date?endDate)

{

this.endDate?=?endDate;

}

public?boolean?isHasThisSite(Site?site)

{

for?(Site?l_site?:?this.getList())

{

if?(l_site.equals(site))

{

return?true;

}

}

return?false;

}

//?添加站點(diǎn),成功返回true

public?boolean?addSite(Site?site)

{

return?this.getList().add(site);

}

//?移除站點(diǎn),成功返回true

public?boolean?removeSite(Site?site)

{

return?this.getList().remove(site);

}

@Override

public?String?toString()

{

return?name;

}

}//公交系統(tǒng)類

package?transit;

import?java.util.ArrayList;

import?java.util.List;

public?class?TransitSystem

{

/**

*?1)增加、修改、刪除一個(gè)條公交線路信息。

*?2)增加、修改、刪除公交站點(diǎn)信息。

*?3)按條件顯示公交線路信息(條件有按線路名稱、途經(jīng)車站等)。

*/

private?List?routeList?;??//系統(tǒng)所管理的線路

private?List?siteList;??//系統(tǒng)所管理的站點(diǎn)

public?TransitSystem(){

routeList?=?new?ArrayList();

siteList?=?new?ArrayList();

}

//增加一條線路

public?void?addRoute(Route?route){

if(!routeList.add(route)){

throw?new?RuntimeException("系統(tǒng)中已存在該線路");

}

}

//修改一條線路

public?void?updateRoute(Route?route){

//根據(jù)route?的id?獲取已存在系統(tǒng)中的route

Route?l_route?=?getRoute(route.getId());

if(l_route!=null){

//注入值

l_route.setName(route.getName());

l_route.setList(route.getList());

l_route.setStartDate(route.getStartDate());

l_route.setEndDate(route.getEndDate());

}else{

throw?new?RuntimeException("線路id不匹配,無(wú)法修改");

}

}

//獲取該系統(tǒng)中的線路,根據(jù)id獲取

public?Route?getRoute(Integer?id){

Route?route2?=?null;

for?(Route?route?:?this.getRouteList())

{

if(route.getId().equals(id)){

route2?=?route;

}

}

return?route2;

}

//刪除一條線路,根據(jù)對(duì)象刪除

public?void?removeRoute(Route?route){

if(!this.getRouteList().remove(route)){

throw?new?RuntimeException(route.getId()+"線路不存在");

}

}

//增加一條公交站點(diǎn)

public?void?addSite(Site?site){

if(!this.siteList.add(site)){

throw?new?RuntimeException(site.getId()+"站點(diǎn)已存在");

}

}

//刪除一條公交站點(diǎn)

public?void?removeSite(Site?site){

if(!this.getSiteList().remove(site)){

throw?new?RuntimeException(site.getId()+"站點(diǎn)不存在");

}

}

//修改一條公交站點(diǎn)

public?void?updateSite(Site?site){

//根據(jù)route?的id?獲取已存在系統(tǒng)中的route

Site?l_site?=?getSite(site.getId());

if(l_site!=null){

//注入值

l_site.setName(site.getName());

l_site.setList(site.getList());

}else{

throw?new?RuntimeException("站點(diǎn)id不匹配,無(wú)法修改");

}

}

//獲取該系統(tǒng)中的公交站點(diǎn),根據(jù)id獲取

public?Site?getSite(Integer?id){

Site?site2?=?null;

for?(Site?site?:?this.getSiteList())

{

if(site.getId().equals(id)){

site2?=?site;

}

}

return?site2;

}

//按線路名稱查詢公交線路信息

public?Route?getRouteByName(String?name){

for?(Route?route?:?this.getRouteList())

{

if(route.getName().equals(name)){

return?route;

}

}

return?null;

}

//根據(jù)途經(jīng)車站查詢公交線路

public?List?getRouteBySite(Site?site){

return?site.getList();

}

public?List?getRouteList()

{

return?routeList;

}

public?void?setRouteList(List?routeList)

{

this.routeList?=?routeList;

}

public?List?getSiteList()

{

return?siteList;

}

public?void?setSiteList(List?siteList)

{

this.siteList?=?siteList;

}

}//測(cè)試類

package?transit;

import?java.text.ParseException;

import?java.text.SimpleDateFormat;

import?java.util.Date;

import?java.util.List;

import?java.util.Random;

public?class?_Test

{

public?static?void?main(String[]?args)?throws?ParseException

{

TransitSystem?system?=?new?TransitSystem();

SimpleDateFormat?format?=?new?SimpleDateFormat("hh:MM");

Date?startDate?=?format.parse("07:30");

Date?endDate?=?format.parse("22:30");

//?向系統(tǒng)中添加10條線路,20個(gè)站點(diǎn)

for?(int?i?=?0;?i?

{

if?(i?

{

system.addRoute(new?Route(i,?"線路"?+?i,?startDate,?endDate));

}

system.addSite(new?Site(i,?"站點(diǎn)"?+?i));

}

List?siteList?=?system.getSiteList();

//?為系統(tǒng)中的站點(diǎn)添加線路

for?(Route?route?:?system.getRouteList())

{

//?每條線路?隨機(jī)添加N個(gè)站點(diǎn)

int?n?=?new?Random().nextInt(siteList.size());

for?(int?i?=?0;?i?

{

//?每個(gè)站點(diǎn)也是隨機(jī),如重復(fù),則添加失敗

int?x?=?new?Random().nextInt(siteList.size());

if?(!route.isHasThisSite(siteList.get(x)))

{

route.addSite(siteList.get(x));

//?同時(shí)該站點(diǎn)也添加該線路

siteList.get(x).addRoute(route);

}

}

}

//?查詢所有的線路所包含的站點(diǎn)

for?(Route?route?:?system.getRouteList())

{

System.out

.println(route.getName()?+?"?:對(duì)應(yīng)的站點(diǎn)集合:"?+?route.getList());

}

//?查詢所有的站點(diǎn)對(duì)應(yīng)的線路

for?(Site?site?:?system.getSiteList())

{

System.out.println("站點(diǎn)"?+?site.getName()?+?"?:對(duì)應(yīng)的線路集合:?"

+?site.getList());

}

}

}

總結(jié)

以上是生活随笔為你收集整理的java 公交管理系统 代码_java公交线路管理系统的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。