公共租赁房申请审批系统:使用Scala语言实现摇号选房
{/'title/':/'公共租赁房申请审批系统:使用Scala语言实现摇号选房/',/'description/':/'本系统使用Scala语言实现,模拟公共租赁房的申请审批流程。用户可以通过控制台输入申请人的个人信息,系统会根据申请标准进行判断,符合条件的申请人可以参与摇号选房。/',/'keywords/':/'公共租赁房, 申请审批, 摇号选房, Scala, 线程, 接口, 继承/',/'content/':/'import scala.util.Random//nimport scala.concurrent.Future//nimport scala.concurrent.ExecutionContext.Implicits.global//nimport scala.concurrent.duration._//n//ncase class Person(name: String, age: Int, id: String, isMarried: Boolean, hasHouse: Boolean, monthlyIncome: Double)//n//ntrait PersonDao {//n def isAgeEligible(person: Person): Boolean//n def isIncomeEligible(person: Person): Boolean//n def isHouseEligible(person: Person): Boolean//n def isCarEligible(person: Person): Boolean//n}//n//nclass DaoImpl extends PersonDao {//n override def isAgeEligible(person: Person): Boolean = person.age >= 18//n override def isIncomeEligible(person: Person): Boolean = person.monthlyIncome < 3000//n override def isHouseEligible(person: Person): Boolean = !person.hasHouse//n override def isCarEligible(person: Person): Boolean = true//n}//n//nobject Test {//n def main(args: Array[String]): Unit = {//n var continueApproval = true//n while (continueApproval) {//n val person = Create.createPerson()//n val dao = new DaoImpl()//n val eligible = dao.isAgeEligible(person) && dao.isIncomeEligible(person) && dao.isHouseEligible(person) && dao.isCarEligible(person)//n if (eligible) {//n println(/'Eligible for lottery draw!/')//n val future = Future {//n Thread.sleep(10000)//n LotteryDraw()//n }//n val result = future.map { r =>//n if (r) /'You have been selected for a housing unit!/'//n else /'Sorry, you were not selected in the lottery draw./'//n }//n println(/'Waiting for lottery draw.../')//n println(Await.result(result, 10.seconds))//n } else {//n println(/'Not eligible for lottery draw./')//n }//n//n println(/'Continue approval? (Y/N)/')//n val input = scala.io.StdIn.readLine()//n if (input != /'Y/' && input != /'y/') {//n continueApproval = false//n }//n }//n }//n//n def LotteryDraw(): Boolean = {//n val random = new Random()//n random.nextBoolean()//n }//n}//n//nobject Create {//n def createPerson(): Person = {//n println(/'Enter name:/')//n val name = scala.io.StdIn.readLine()//n println(/'Enter age:/')//n val age = scala.io.StdIn.readInt()//n println(/'Enter ID:/')//n val id = scala.io.StdIn.readLine()//n println(/'Married? (true/false)/')//n val isMarried = scala.io.StdIn.readBoolean()//n println(/'Owns a house? (true/false)/')//n val hasHouse = scala.io.StdIn.readBoolean()//n println(/'Enter monthly income:/')//n val monthlyIncome = scala.io.StdIn.readDouble()//n//n Person(name, age, id, isMarried, hasHouse, monthlyIncome)//n }//n}/
原文地址: https://www.cveoy.top/t/topic/pwB7 著作权归作者所有。请勿转载和采集!