java代碼描述宿舍人 java簡單的宿舍管理

JAVA編程請定義一個寢室類,內(nèi)容自擬!

寢室類如下:

創(chuàng)新互聯(lián)建站堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站設(shè)計、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的鄢陵網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

import java.util.List;

import java.util.Objects;

public class Bedroom {

private String place;

private String manager;

private Integer bedCount;

private Integer tableCount;

private ListPerson persons;

private char sexFlag;//男:1 女:2

public String getPlace() {

return place;

}

public void setPlace(String place) {

this.place = place;

}

public String getManager() {

return manager;

}

public void setManager(String manager) {

this.manager = manager;

}

public Integer getBedCount() {

return bedCount;

}

public void setBedCount(Integer bedCount) {

this.bedCount = bedCount;

}

public Integer getTableCount() {

return tableCount;

}

public void setTableCount(Integer tableCount) {

this.tableCount = tableCount;

}

public ListPerson getPersons() {

return persons;

}

public void setPersons(ListPerson persons) {

this.persons = persons;

}

public char getSexFlag() {

return sexFlag;

}

public void setSexFlag(char sexFlag) {

this.sexFlag = sexFlag;

}

@Override

public boolean equals(Object o) {

if (this == o) return true;

if (o == null || getClass() != o.getClass()) return false;

Bedroom bedroom = (Bedroom) o;

return sexFlag == bedroom.sexFlag

Objects.equals(place, bedroom.place)

Objects.equals(manager, bedroom.manager)

Objects.equals(bedCount, bedroom.bedCount)

Objects.equals(tableCount, bedroom.tableCount)

Objects.equals(persons, bedroom.persons);

}

@Override

public int hashCode() {

return Objects.hash(place, manager, bedCount, tableCount, persons, sexFlag);

}

@Override

public String toString() {

return "Bedroom{" +

"place='" + place + '\'' +

", manager='" + manager + '\'' +

", bedCount=" + bedCount +

", tableCount=" + tableCount +

", persons=" + persons +

", sexFlag=" + sexFlag +

'}';

}

}

寢室中住宿的人員類如下:

import java.util.Objects;

public class Person {

private String sno;

private String name;

private String subject;

public String getSno() {

return sno;

}

public void setSno(String sno) {

this.sno = sno;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getSubject() {

return subject;

}

public void setSubject(String subject) {

this.subject = subject;

}

@Override

public boolean equals(Object o) {

if (this == o) return true;

if (o == null || getClass() != o.getClass()) return false;

Person person = (Person) o;

return Objects.equals(sno, person.sno)

Objects.equals(name, person.name)

Objects.equals(subject, person.subject);

}

@Override

public int hashCode() {

return Objects.hash(sno, name, subject);

}

@Override

public String toString() {

return "Person{" +

"sno='" + sno + '\'' +

", name='" + name + '\'' +

", subject='" + subject + '\'' +

'}';

}

}

java怎么寫宿舍人數(shù)限制

鎖加單例:

public class Regist{ private static Regist rgst=new Regist(); private Regist(){} private int cnt=0; private int max=100; public static getRegist(){return rgst;} ///設(shè)置最大上線人數(shù) public void setMax(int max){this.max=max;} ///判斷新用戶能否登入 public synchronized boolean login(){ if(cnt=max)return false; ++cnt; return true; } ///用戶退出時調(diào)用 public synchronized void logout(){ --cnt; }};

有新用戶要登入時,先Regist::getRegist().login()判斷能否登入,返回true則表示沒到用戶上限,可以登入,否則表示到上限了,不能登入,用戶退出時需要調(diào)用Regist::getRegist().logout()

synchronized不清楚可以百度,是種類似鎖的東西。作用于方法上,相當(dāng)于調(diào)用方法前先lock,調(diào)用之后unlock,其鎖的對象是該方法的類對象。

線程不是太多可以用這個方法,線程太多用這個可能慢了些,好像加鎖比較耗時間,如果同一個時間太多人進(jìn)行登入操作,都得在那等著,一個一個進(jìn)行,反應(yīng)慢

用JAVA,C或C++語言寫關(guān)于宿舍成員的程序

全部代碼已發(fā)送你的郵箱。

以下是部分代碼。

package?zhidao;

import?java.util.Scanner;

public?class?Main?{

//從控制臺讀入信息

private?Scanner?scanner?=?new?Scanner(System.in);

private?StudentService?ss?=?new?StudentService();

public?static?void?main(String[]?args)?{

Main?main?=?new?Main();

main.startService();

}

public?void?startService(){

System.out.println("歡迎使用宿舍管理系統(tǒng)");

//加載之前的舍友信息

ss.getFromFile();

while(true){

System.out.println("1,添加室友信息\t2,顯示所有室友信息\t3,按姓名查找室友\t4,保存室友信息到文件\t5,調(diào)入舍友\t6,調(diào)離舍友\t7,退出");

System.out.print("請選擇:");

int?choose?=?Integer.parseInt(scanner.nextLine());

switch?(choose)?{

case?1:

this.addRoomMates();

break;

case?2:

ss.printRoomMates();

break;

case?3:

this.findRoomMatesByName();

break;

case?4:

ss.saveToFile();

break;

case?5:

this.addRoomMates();

break;

case?6:

this.removeRoomMatesBySno();

break;

case?7:

System.out.println("info?--?感謝使用,再見!");

System.exit(0);

break;

default:

System.out.println("info?--?無此項,請重新選擇!");

break;

}

}

}

/**

*?調(diào)離舍友

*/

private?void?removeRoomMatesBySno()?{

while(true){

System.out.println("1,調(diào)離舍友\t2,退到上一層");

System.out.print("請選擇:");

int?choose?=?Integer.parseInt(scanner.nextLine());

switch?(choose)?{

case?1:

remove();

break;

case?2:

return;

default:

System.out.println("info?--?無此項,請重新選擇!");

}

}

}

/**

*?調(diào)離

*/

private?void?remove()?{

System.out.print("請輸入學(xué)號:");

String?sno?=?scanner.nextLine();

ss.removeRoomMatesBySno(sno);

}

/**

*?按姓名查找

*/

private?void?findRoomMatesByName()?{

while(true){

System.out.println("1,查找\t2,退到上一層");

System.out.print("請選擇:");

int?choose?=?Integer.parseInt(scanner.nextLine());

switch?(choose)?{

case?1:

check();

break;

case?2:

return;

default:

System.out.println("info?--?無此項,請重新選擇!");

}

}

}

/**

*?查找

*/

private?void?check()?{

System.out.print("請輸入姓名:");

String?name?=?scanner.nextLine();

ss.findRoomMateByName(name);

}

/**

*?添加室友

*/

private?void?addRoomMates()?{

while(true){

System.out.println("1,添加\t2,退到上一層");

System.out.print("請選擇:");

int?choose?=?Integer.parseInt(scanner.nextLine());

switch?(choose)?{

case?1:

add();

break;

case?2:

return;

default:

System.out.println("info?--?無此項,請重新選擇!");

}

}

}

/**

*?添加

*/

private?void?add()?{

System.out.print("請輸入學(xué)號:");

String?sno?=?scanner.nextLine();

System.out.print("請輸入姓名:");

String?name?=?scanner.nextLine();

System.out.print("請輸入性別:");

String?sex?=?scanner.nextLine();

System.out.print("請輸入年齡:");

int?age?=?Integer.parseInt(scanner.nextLine());

ss.addRoomMates(new?Student(sno,name,sex,age));

}

}

網(wǎng)頁標(biāo)題:java代碼描述宿舍人 java簡單的宿舍管理
本文地址:http://muchs.cn/article32/doocosc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、面包屑導(dǎo)航小程序開發(fā)、微信小程序、網(wǎng)站收錄、域名注冊

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運營