java中递归的使用,及其实例
1、// 用户信息的持久化保存(序列化)public void save(Map m) throws Exception {FileOutputStream fos = new FileOutputStream("User.txt");ObjectOutputStream oos = new ObjectOutputStream(fos);oos.writeObject(m);oos.flush();oos.close();}

3、// 验证并返回注册姓名public static String nameLenght(Map m) {System.out.println("请输入3位以上字母和数字组成的姓名:");String name = sc.next();//if (name.length() < 3) {//System.out.println("注册姓名小于三位,请重新输入:");//returnnameLenght(m);//}//验证姓名长度大于3并且由字母数字组成if(!(name.matches("\\w{3,}"))){System.out.println("注册姓名不符合格式!");returnnameLenght(m);}// 用于验证注册姓名是否存在Set<String> sets = m.keySet();for (String s : sets) {if (s.equals(name)) {System.out.println("用户名已存在,请重新输入:");returnnameLenght(m);}}return name;}

5、// 用户登录验证public void martch(Map m) {System.out.println("请输入姓名:");String name = sc.next();//输入姓名,在map集合查找是否存在,存在则验证密码,不存在则使用递归,返回重新输入Set<String> sets = m.keySet();for (String s : sets) {if (name.equals(s)) {martchPassWord(s, m);return;}}System.out.println("姓名不存在,请重新输入");martch(m);}
