JAVA停车场管理系统(不含GUI图形用户界面)

目录

任务要求

具体实现 

Parking_Management_System类

Account类

Administrators类 

User类

Tool类


任务要求

本代码用于实现一个简单的停车场管理系统,包含数据结构中的栈和队列

栈代表停车场停车的数量,先进后出,因为入口被视为一次只能过一辆车

其次临时栈,如果有车要出停车场,则需要将其他车假设移出停车场,放到临时栈中,之后等待车出停车场后,再使车辆依次归位停车场

队列代表临时便道,如果停车场满,但依然有车希望进入,则进入临时便道等待,直到有车出停车场

具体如下图:

具体实现 

本代码分为五个部分

Parking_Management_System类

用于实现主菜单功能

1.进入管理员系统

2.进入用户系统

3.退出系统

import java.util.*;
public class Parking_Management_System {static Scanner sc=new Scanner(System.in);static int Capacity=5;static Queue<String>Lane=new ArrayDeque<String>();static Stack<String>Parking_Space=new Stack<String>();public static void main(String[] args) {Scanner sc=new Scanner(System.in);System.out.println("**********************");System.out.println("欢迎使用停车场管理系统");System.out.println("**********************");System.out.println("请选择需要进行的操作:\"管理员系统\"或\"用户系统\"或\"关于我们\"或\"退出系统\"");while(sc.hasNext()) {String Choose=sc.next();//输入进行选择boolean exit=false;//初始化退出状态switch (Choose) {case "管理员系统": {Administrators.Administrators_System();break;}case "用户系统": {User.User_System();break;}case "关于我们": {Tool.Acknowledgement();break;}case "退出系统": {System.out.println("请选择需要进行的操作:\"确定\"或\"取消\"");exit=Tool.Exit();//调用退出函数if(exit){System.out.println("系统已经成功关闭");System.out.println("欢迎下次使用!");System.out.println();break;}}}if(exit)//退出系统{break;}System.out.println("请选择需要进行的操作:\"管理员系统\"或\"用户系统\"或\"关于我们\"或\"退出系统\"");}}
}
Account类

用于定义用户注册账号所储存的数据,包括VIP办理情况,停车状态,充值VIP时间,优惠券数量,密码,剩余可购买优惠券数量,停车车牌号,入车时间

import java.util.*;public class Account {private boolean VIP_Card;//是否有vipprivate boolean Stop;//是否是停车状态private Date Time;//VIP充值时间private int Coupon;//是否有优惠券private String Password;//密码private int Coupon_Cnt;//还能买几次优惠券private String LicensePlateNumber;//车牌号private Date EntryTime;//入车时间public boolean isStop() {return Stop;}public void setStop(boolean stop) {Stop = stop;}public boolean isVIP_Card() {return VIP_Card;}public void setVIP_Card(boolean VIP_Card) {this.VIP_Card = VIP_Card;}public Date getTime() {return Time;}public void setTime(Date Time) {this.Time = Time;}public int getCoupon() {return Coupon;}public void setCoupon(int Coupon) {this.Coupon = Coupon;}public String getPassword() {return Password;}public void setPassword(String password) {Password = password;}public int getCoupon_Cnt() {return Coupon_Cnt;}public void setCoupon_Cnt(int coupon_Cnt) {Coupon_Cnt = coupon_Cnt;}public String getLicensePlateNumber() {return LicensePlateNumber;}public void setLicensePlateNumber(String licensePlateNumber) {LicensePlateNumber = licensePlateNumber;}public Date getEntryTime() {return EntryTime;}public void setEntryTime(Date entryTime) {EntryTime = entryTime;}
}
Administrators类 

用于实现管理员功能,查询停车场信息,查询收入情况,查询投放优惠券数,查询用户信息

import java.text.*;
import java.util.*;public class Administrators {static Scanner sc=new Scanner(System.in);static String Income="0";//总收入static String VIP_Income="0";//VIP卡收入static String Other_Income="0";//购买优惠券收入static Map<String,String>administrators=new HashMap<String,String>();static String Key="";//注册管理员账号的密钥,只有密钥正确才可注册管理员账号public static void Administrators_System(){if(administrators.isEmpty()){Initialization();//初始化}System.out.println("请选择需要进行的操作:\"登录\"或\"注册\"或\"返回\"");while(sc.hasNext()) {String Choose= sc.next();boolean Determine=false;switch (Choose) {case "登录": {System.out.println("请输入管理员账号:");String Account = sc.next();System.out.println("请输入管理员密码:");String Password = sc.next();if (Administrators_Lon_on(Account, Password)) {System.out.println("登入成功");System.out.println();Administrators_System_Main_Menu();}else{System.out.println("账号或密码错误,请重新尝试");System.out.println();}break;}case "注册": {System.out.println("请输入注册账号");String Account = sc.next();System.out.println("请输入注册密码");String Password = sc.next();System.out.println("请输入密钥");String Secret_key = sc.next();Register(Account, Password, Secret_key);break;}case "返回":{Determine=true;System.out.println("返回成功");System.out.println();break;}}if(Determine){break;}System.out.println("请选择需要进行的操作:\"登录\"或\"注册\"或\"返回\"");}}public static void Initialization()//初始化管理员账号{administrators.put("","");//自行输入}public static void Register(String Account,String Password,String Secret_key){if(!Secret_key.equals(Key)){System.out.println("密钥错误");System.out.println();}else  if(administrators.get(Account)!=null){System.out.println("注册账号已存在");System.out.println("注册失败");System.out.println();}else{administrators.put(Account,Password);System.out.println("注册成功");System.out.println();}}public static boolean Administrators_Lon_on(String Account,String Password)//账号是否有效{Set<String>set=administrators.keySet();Iterator<String>it=set.iterator();//用于遍历用户账号while(it.hasNext()){String key=it.next();String value=administrators.get(key);if(Account.equals(key)&&Password.equals(value)){return true;}}return false;}public static void Query_Income()//查询收入{System.out.println("当前总收入:"+Income+"元");System.out.println("停车收入:"+(Integer.valueOf(Income)-Integer.valueOf(VIP_Income)-Integer.valueOf(Other_Income))+"元");System.out.println("会员收入"+VIP_Income+"元");System.out.println("其他收入"+Other_Income+"元");System.out.println();}public static void Query_Coupon()//查询已投放优惠券{int cnt=0;Set<String>set=User.user.keySet();Iterator<String>it=set.iterator();while(it.hasNext()){String key= it.next();cnt+=User.user.get(key).getCoupon();}System.out.println("已经有"+cnt+"张优惠券投入市场");}public static void Query_User()//查询用户信息{System.out.println("请输入需要查询用户账号");String account=sc.next();Set<String>set=User.user.keySet();Iterator<String>it=set.iterator();boolean Determine=false;while(it.hasNext()){String key=it.next();if(key.equals(account)){Determine=true;if(User.user.get(account).isStop()) {System.out.println("该账户停车车牌号:"+User.user.get(account).getLicensePlateNumber());SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");String s= sdf.format(User.user.get(key).getEntryTime());System.out.println("该用户的入车时间:"+s);}else{System.out.println("该用户暂未停车");}break;}}if(!Determine){System.out.println("该用户不存在");}System.out.println();}public static void Query_Parking(){System.out.println("请选择需要进行的操作:\"查询停车场车辆信息\"或\"查询车位\"或\"等待车辆\"或\"返回\"");while(sc.hasNext()) {boolean Determine=false;String Choose=sc.next();switch (Choose) {case "查询停车场车辆信息":{Set<String>set=User.user.keySet();Iterator<String> it=set.iterator();System.out.println("用户名        车牌号        入车时间");while(it.hasNext()){String key= it.next();if(User.user.get(key).isStop()) {SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");String s= sdf.format(User.user.get(key).getEntryTime());System.out.printf("%-12s %-12s %-58s\n",key,User.user.get(key).getLicensePlateNumber(),s);}else{System.out.println(key + "          " +"暂无停车" + "      "+"暂无停车");}}break;}case "查询车位": {System.out.println("停车场还剩下" + (Parking_Management_System.Capacity - Parking_Management_System.Parking_Space.size()) + "个空车位");System.out.println();break;}case "等待车辆":{System.out.println("当前需要等待排队车辆" + Parking_Management_System.Lane.size() + "辆");System.out.println();break;}case "返回": {Determine=true;System.out.println("返回成功");System.out.println();break;}}if(Determine){break;}System.out.println("请选择需要进行的操作:\"查询车位\"或\"等待车辆\"或\"返回\"");}}public static void Administrators_System_Main_Menu(){System.out.println("请选择需要进行的操作:\"查询停车场信息\"或\"查询收入\"或\"查询投放优惠券数\"或\"查询用户信息\"或\"返回\"");boolean Determine=false;while(sc.hasNext()){String Select=sc.next();switch (Select){case "查询收入":{Query_Income();break;}case "查询投放优惠券数":{Query_Coupon();break;}case "查询用户信息":{Query_User();break;}case "查询停车场信息":{Query_Parking();break;}case "返回":{Determine=true;System.out.println("返回成功");System.out.println();break;}}if(Determine){break;}System.out.println("请选择需要进行的操作:\"查询停车场信息\"或\"查询收入\"或\"查询投放优惠券数\"或\"查询用户信息\"或\"返回\"");}}
}
User类

实现用户功能,查询停车场信息,查询月卡,查询优惠券,停车操作,出车操作

import java.text.*;
import java.util.*;public class User {static Scanner sc=new Scanner(System.in);static String Current_Account;static Map<String,Account>user=new HashMap<String,Account>();public static void User_System(){System.out.println("请选择需要进行的操作:\"登录\"或\"注册\"或\"返回\"");while(sc.hasNext()) {String Choose= sc.next();boolean Determine=false;switch (Choose) {case "登录": {System.out.println("请输入用户账号:");String Account = sc.next();System.out.println("请输入用户密码:");String Password = sc.next();if (User_Lon_on(Account, Password)) {System.out.println("登入成功");System.out.println();Current_Account=Account;User_Main_Menu();}else{System.out.println("账号或密码错误,请重新尝试");System.out.println();}break;}case "注册": {System.out.println("请输入注册账号");String Account = sc.next();System.out.println("请输入注册密码");String Password = sc.next();Register(Account, Password);break;}case "返回":{Determine=true;System.out.println("返回成功");System.out.println();break;}}if(Determine){break;}System.out.println("请选择需要进行的操作:\"登录\"或\"注册\"或\"返回\"");}}public static void Register(String Account,String Password) {Set<String> set = user.keySet();Iterator<String> it = set.iterator();boolean Determine=false;while (it.hasNext()) {String key = it.next();if(key.equals(Account)){Determine=true;break;}}if (Determine) {System.out.println("注册账号已存在");System.out.println("注册失败");System.out.println();} else {Account account = new Account();account.setStop(false);account.setCoupon(0);account.setPassword(Password);account.setVIP_Card(false);account.setCoupon_Cnt(5);user.put(Account, account);System.out.println("注册成功");System.out.println();}}public static Boolean User_Lon_on(String Account,String Password){Set<String>set=user.keySet();Iterator<String>it=set.iterator();while(it.hasNext()){String key=it.next();String value=user.get(key).getPassword();if(Account.equals(key)&&Password.equals(value)){return true;}}return false;}public static void Query()//查询车位{System.out.println("请选择需要进行的操作:\"查询车位\"或\"等待车辆\"或\"返回\"");while(sc.hasNext()) {boolean Determine=false;String Choose=sc.next();switch (Choose) {case "查询车位": {System.out.println("停车场还剩下" + (Parking_Management_System.Capacity - Parking_Management_System.Parking_Space.size()) + "个空车位");System.out.println();break;}case "等待车辆":{System.out.println("当前需要等待排队车辆" + Parking_Management_System.Lane.size() + "辆");System.out.println();break;}case "返回": {Determine=true;System.out.println("返回成功");System.out.println();break;}}if(Determine){break;}System.out.println("请选择需要进行的操作:\"查询车位\"或\"等待车辆\"或\"返回\"");}}public static void VIP_Card() {//查询月卡Date date=new Date(Long.valueOf("2592000000"));Date Current_date=new Date();if(!user.get(Current_Account).isVIP_Card()||(Current_date.getTime()-user.get(Current_Account).getTime().getTime()>date.getTime())) {System.out.println("您当前未充值月卡");System.out.println("充值月卡即可免费停车,每月只需800元");System.out.println("您可以选择\"充值月卡\"或\"返回\"");System.out.println();while(sc.hasNext()) {boolean Determine=false;String Choose = sc.next();switch (Choose) {case "充值月卡": {System.out.println("是否确定充值月卡\"确定\"或\"取消\"");String Select = sc.next();switch (Select) {case "确定": {System.out.println("恭喜您成功充值成为我们的VIP客户");Administrators.VIP_Income=String.valueOf(Double.valueOf(Administrators.VIP_Income)+800);Administrators.Income=String.valueOf(Double.valueOf(Administrators.Income)+800);user.get(Current_Account).setTime(Current_date);user.get(Current_Account).setVIP_Card(true);break;}case "取消": {break;}}break;}case "返回": {Determine = true;System.out.println("返回成功");System.out.println();break;}}if (Determine||(user.get(Current_Account).isVIP_Card())) {break;}System.out.println("您当前未充值月卡");System.out.println("充值月卡即可免费停车,每月只需800元");System.out.println("您可以选择\"充值月卡\"或\"返回\"");System.out.println();}}else{System.out.println("尊敬的VIP用户您好");SimpleDateFormat sdf=new SimpleDateFormat("dd天 HH小时mm分钟ss秒");String s=sdf.format(date.getTime()-(Current_date.getTime()-user.get(Current_Account).getTime().getTime()));System.out.println("您的VIP仅剩"+s+"就到期了");}}public static void Coupon()//优惠券{System.out.println("请选择需要进行的操作:\"查询剩余优惠券\"或\"购买优惠券\"或\"返回\"");while(sc.hasNext()){boolean Determine=false;String Choose=sc.next();switch (Choose){case "查询剩余优惠券":{System.out.println("您还有"+user.get(Current_Account).getCoupon()+"张优惠券可以使用");break;}case "购买优惠券":{System.out.println("是否确定花费50元购买7.5折优惠券\"确定\"或\"取消\"");String Select=sc.next();switch (Select) {case "确定": {System.out.println("购买成功");Administrators.Other_Income=String.valueOf(Double.valueOf(Administrators.Other_Income)+50);Administrators.Income=String.valueOf(Double.valueOf(Administrators.Income)+50);user.get(Current_Account).setCoupon(user.get(Current_Account).getCoupon()+1);user.get(Current_Account).setCoupon_Cnt(user.get(Current_Account).getCoupon_Cnt()-1);System.out.println("剩余可购买次数:"+user.get(Current_Account).getCoupon_Cnt());System.out.println();break;}case "取消": {break;}}break;}case "返回":{Determine=true;System.out.println("返回成功");System.out.println();break;}}if(Determine){break;}System.out.println("请选择需要进行的操作:\"查询剩余优惠券\"或\"购买优惠券\"或\"返回\"");}}public static void Stop()//停车{if(user.get(Current_Account).isStop()){System.out.println("本账号已经记录停车车辆或正在排队停车");System.out.println("请出车后再使用");}else{System.out.println("请输入车牌号:");String LicensePlateNumber = sc.next();user.get(Current_Account).setLicensePlateNumber(LicensePlateNumber);if(Parking_Management_System.Capacity-Parking_Management_System.Parking_Space.size()>0) {//有空位Date date = new Date();user.get(Current_Account).setEntryTime(date);Parking_Management_System.Parking_Space.push(Current_Account);user.get(Current_Account).setStop(true);System.out.println("停车成功");System.out.println();}else {//没空位进入等待车道System.out.println("停车场已满,请排队");System.out.println("您当前是第"+Parking_Management_System.Lane.size()+"位置");System.out.println();user.get(Current_Account).setStop(true);Parking_Management_System.Lane.add(LicensePlateNumber);}}}public static void Departure()//出车{Stack<String>Temporary_AccessRoad=new Stack<String>();int cnt=0;while(!Parking_Management_System.Parking_Space.isEmpty()){Temporary_AccessRoad.push(Parking_Management_System.Parking_Space.pop());if(Temporary_AccessRoad.peek().equals(user.get(Current_Account).getLicensePlateNumber())){Temporary_AccessRoad.pop();if(!user.get(Current_Account).isVIP_Card()){Date date=new Date();Long Time=(date.getTime()-user.get(Current_Account).getEntryTime().getTime())/1000/60;SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");String s1= sdf.format(user.get(Current_Account).getEntryTime());String s=sdf.format(date);System.out.println("本次入车时间:"+s1);System.out.println("本次出车时间:"+s);System.out.println("请选择\"优惠券支付\"或\"正常支付\"");String Choose=sc.next();double sum=0;if(Time<15){System.out.println("本次停车免费");}else {sum+=(Time-15)*1.5;System.out.printf("本次停车需缴纳%.2f元\n" ,sum );switch (Choose){case "优惠券支付":{if(user.get(Current_Account).getCoupon()!=0){user.get(Current_Account).setCoupon(user.get(Current_Account).getCoupon()-1);Administrators.Income=String.valueOf(Double.valueOf(Administrators.Income)+sum*0.75);System.out.printf("支付成功,本次实际缴纳%.2f\n",0.75*sum);}else{System.out.println("您当前的优惠券数量不足");Administrators.Income=String.valueOf(Double.valueOf(Administrators.Income)+sum);System.out.printf("支付成功,本次实际缴纳%.2f元\n",sum);System.out.println();}break;}case "正常支付":{Administrators.Income=String.valueOf(Double.valueOf(Administrators.Income)+sum);System.out.printf("支付成功,本次实际缴纳%.2f元\n",sum);break;}}}}else{System.out.println("尊敬的VIP客户,本次已为您免单");}System.out.println("出车完成");System.out.println("本次退让次数:"+cnt);System.out.println("欢迎下次再来");user.get(Current_Account).setStop(false);System.out.println();break;}cnt++;}while(!Temporary_AccessRoad.isEmpty()){Parking_Management_System.Parking_Space.push(Temporary_AccessRoad.pop());}while(Parking_Management_System.Parking_Space.size()<Parking_Management_System.Capacity){if(Parking_Management_System.Lane.size()==0){break;}Parking_Management_System.Parking_Space.push(Parking_Management_System.Lane.poll());}}public static void User_Main_Menu(){System.out.println("请选择需要进行的操作:\"查询停车场信息\"或\"查询月卡\"或\"查询优惠券\"或\"停车\"或\"出车\"或\"返回\"");while(sc.hasNext()){boolean Determine=false;String Select=sc.next();switch (Select){case "查询停车场信息":{Query();break;}case "查询月卡":{VIP_Card();break;}case "查询优惠券":{Coupon();break;}case "停车":{Stop();break;}case "出车":{Departure();break;}case "返回":{Determine=true;System.out.println("返回成功");System.out.println();break;}}if(Determine){break;}System.out.println("请选择需要进行的操作:\"查询停车场信息\"或\"查询月卡\"或\"查询优惠券\"或\"停车\"或\"出车\"或\"返回\"");}}
}
Tool类

其他功能实现

import java.util.*;public class Tool {public static void Acknowledgement(){System.out.println("本系统由进行研发");System.out.println("成员包括:排名不分先后");System.out.println("感谢使用!");System.out.println();}public static boolean Exit(){Scanner sc=new Scanner(System.in);String Choose= sc.next();switch (Choose){case "确定": {return true;}case "取消": {return false;}}System.out.println("无效操作");return false;}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/831509.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ColdDTA:利用数据增强和基于注意力的特征融合进行药物靶标结合亲和力预测

ColdDTA发表在Computers in Biology and Medicine 的一篇一区文章 突出 • 数据增强和基于注意力的特征融合用于药物靶点结合亲和力预测。 • 与其他方法相比&#xff0c;它在 Davis、KIBA 和 BindingDB 数据集上显示出竞争性能。 • 可视化模型权重可以获得可解释的见解。 …

Python梯度提升决策树库之lightgbm使用详解

概要 LightGBM是一个快速、分布式、高性能的梯度提升决策树(Gradient Boosting Decision Tree)库,它在机器学习和数据挖掘领域被广泛应用。本文将介绍LightGBM库的安装方法、主要特性、基本功能、高级功能、以及在实际应用中的场景和总结。 安装 首先,需要安装LightGBM库…

【信息系统项目管理师知识点速记】成本管理:估算成本

11.4 估算成本 估算成本是对完成项目工作所需资源成本进行近似估算的过程。该过程确定项目所需的资金,应定期在整个项目期间开展。 成本估算 成本估算是对完成活动所需资源的可能成本进行的量化评估,是根据已知信息进行的成本预测。估算成本涉及识别和分析可用于启动和完成…

IndyTcpServer使用详解

1、IndyTCPserver的创建 IdTCPServer1.DefaultPort:= 8000; IdTCPServer1.ListenQueue:= 1024; //同时处理请求队列数限制 IdTCPServer1.MaxConnections:= 1024; //同时连接数量限制,为0不限制连接数 IdTCPServer1.ContextClass:= TNewIdServerContext; //设置为自定义TIdSe…

第Y9周:重要模块解读

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 | 接辅导、项目定制&#x1f680; 文章来源&#xff1a;K同学的学习圈子 目录 以con.py为例&#xff1a; 一、autopad 二、Conv 三、Focus 四、C2f 文件…

【Java基础】Maven的坐标和依赖

1. 前言 说到坐标&#xff0c;您最熟悉的定义应该是来自平面几何&#xff0c;即在一个平面坐标系中&#xff0c;坐标&#xff08;x&#xff0c;y&#xff09;表示距离 x 轴为 y&#xff0c;距离 y 轴距离为 x 的点&#xff0c;任何一个坐标都能够唯一标识该平面上的一个点。 …

白话NLP技术的演进发展

自然语言处理是人工智能的一个重要分支,旨在让计算机能够理解、生成和处理人类语言。我们每天都在使用自然语言,比如与人对话、阅读文章、撰写邮件等。NLP的目标就是要让机器也能像人一样处理语言,从而实现人机交互、信息检索、机器翻译、情感分析等多种应用。 要让机器理解自…

Golang | Leetcode Golang题解之第66题加一

题目&#xff1a; 题解&#xff1a; func plusOne(digits []int) []int {n : len(digits)for i : n - 1; i > 0; i-- {if digits[i] ! 9 {digits[i]for j : i 1; j < n; j {digits[j] 0}return digits}}// digits 中所有的元素均为 9digits make([]int, n1)digits[0]…

如何基于nginx组建多个子目录网站

华子目录 实验要求实验步骤 实验要求 组建多个子目录网站www.openlab.com&#xff0c;该网站有2个子目录www.openlab.com/sxhkt和www.openlab.com/zywww.openlab.com/sxhkt使用http读取www.openlab.com/zy使用https读取 实验步骤 准备工作 [rootserver ~]# setenforce 0[ro…

串口单线半双工转换电路

用来把单线半双工模式的串口转换成双线&#xff0c;然后才能连接到普通的双线USB 串口模块&#xff0c;比如CH340 之类的。电路设计来自大佬的博客&#xff1a;AVR half-duplex software UART supporting single pin operation。他在Arduino 上用软件模拟串口功能&#xff0c;利…

测试PG中事务隔离级别

我们知道事务隔离级别有&#xff1a;读未提交&#xff0c;读已提交&#xff0c;可重复读&#xff0c;可序列化。 读未提交 存在 脏读&#xff0c;不可重复读&#xff0c;幻读&#xff1b; 读已提交 存在 不可重复读&#xff0c;幻读 可重复读 存在 幻读 PG 下默认为读已提交…

微信小程序使用蓝牙连接硬件

目录 一、蓝牙官方api文档 二、蓝牙重要参数介绍 三、案例教程 1. 获取蓝牙权限&#xff08;openBluetoothAdapter&#xff09; 2. 开始搜索蓝牙设备(startBluetoothDevicesDiscovery) 3. 监听搜索到新设备的事件(onBluetoothDeviceFound) 4.连接蓝牙设备&#xff08;crea…

【RYG】Python技能练习场—查漏补缺(二)

1、PASS关键字 通常用作占位符&#xff0c;表示不执行任何操作&#xff0c;主要用于语法结构中要求有语句的地方&#xff0c;但又不需要做任何实际操作的情况。例如&#xff0c;在定义一个函数或类时&#xff0c;如果暂时不需要写函数体或方法体&#xff0c;可以使用"pas…

SpringData JPA - ORM 框架下,打造高效数据访问层

目录 一、SpringData JPA 概述 1.1、什么是 JPA 1.2、什么是 ORM 1.3、什么是 Hibernate 1.4、JPA 和 Hibernate 的关系 1.5、JPA 的优势 二、SpringData JPA 实战开发 2.1、依赖 2.2、配置文件 2.3、启动类 2.4、创建实体 2.5、基于 JpaRepository 的 CRUD 三、…

网络安全审计

一、什么叫网络安全审计 网络安全审计是按照一定的安全策略&#xff0c;利用记录、系统活动和用户活动等信息&#xff0c;检查、审查和检验操作时间的环境及活动&#xff0c;从而发现系统漏洞、入侵行为或改善系统性能的过程&#xff0c;它是提高系统安全性的重要手段。 系统…

String 最多能存储多少个字符/String 字符串的最大长度/String 字符串有没有长度限制

文章目录 1.编译时字节限制2.运行时长度限制3.小结4.补充 基于 JDK8 进行分析 1.编译时字节限制 String s "11111...1111"; // 其中有 10 万个字符 "1"当我们使用如上形式定义一个字符串的时候&#xff0c;当我们执行 javac 编译时&#xff0c;是会抛出异…

数据结构:时间复杂度/空间复杂度

目录 一、时间复杂度 定义 常见的时间复杂度 如何计算时间复杂度 计算方法 三、实例分析 二、空间复杂度 定义 重要性 常见的空间复杂度 二、空间复杂度 定义 重要性 常见的空间复杂度 计算方法 三、实例分析 大O的渐进表示法 最好情况&#xff08;Best Case…

Deep Learning Part Eight Attention--24.5.3~24.5.4

注意力是全部。 --&#xff08;你若安好&#xff0c;就是夏天&#xff09;安夏的座右铭 00.引子 上一章我们使用 RNN 生成了文本&#xff0c;又通过连接两个 RNN&#xff0c;将一个时序数据转换为了另一个时序数据。我们将这个网络称为 seq2seq&#xff0c;并用它成功求解了简…

spring框架学习记录(1)

前半个月一直在应付期中考试&#xff0c;快被折磨似了orz 文章目录 SpringIoC(Inversion of Control) 控制反转与DI(Dependency Injection)依赖注入bean相关bean配置bean实例化bean的生命周期 依赖注入相关依赖注入方式依赖自动装配 容器创建容器获取bean Spring IoC(Inversi…

leetcode295. 数据流的中位数

class MedianFinder {//A为小根堆&#xff0c;B为大根堆List<Integer> A,B;public MedianFinder() {A new ArrayList<Integer>();B new ArrayList<Integer>();}public void addNum(int num) {int m A.size(),n B.size();if(m n){insert(B,num);int top …