需求四:
让用户输入一个用户名和密码 判断这个用户名和密码是否在指定的文件中 如果不在就一直猜 直到猜对为止 用户只能猜3次 每次失败提示还能猜几次
1.观察文件 创建一个类 描述用户的信息
2.创建一个集合用来存储用户的信息
3.创建一个BR对象
4.读取文件,组成对象 添加到集合中
5.关闭资源
6.提示用户输入用户名和密码
7.拿用户输入的用户名和密��� 去集合中查找, 如果找到就表示在文件中, 否则表示不在
8.使用循环进行反复判断
public static void main(String[] args) throws IOException {
ArrayList<User> list = new ArrayList<User>();
// 创建一个BR对象
BufferedReader br = new BufferedReader(new FileReader("Users.txt"));
String line;
while ((line = br.readLine()) != null) {
// 切割
String[] uu = line.split(",");
User u = new User(uu[0], uu[1]);
list.add(u);
}
br.close();
Scanner sc = new Scanner(System.in);
int count = 0;
while(true){
System.out.println("请输入用户名");
String name = sc.next();
System.out.println("请输入密码");
String pwd = sc.next();
count++;
// 定义标记
int index = -1;
for (int i = 0; i < list.size(); i++) {
User user = list.get(i);
if (name.equals(user.getName()) && pwd.equals(user.getPwd())) {
// 修改标记
index = i;
break;
}
}
// 判断笔记
if (index == -1) {
if(count < 3){
System.out.println("用户名或者密码错误 ,请重新输入用户名和密码 还可以猜测的次数是 :"+(3 - count ));
}else{
System.out.println("别猜了 练习管理员吧 !!!");
break;
}
//
} else {
System.out.println("恭喜你猜对了");
break;
}
}
}
IO版学生管理系统
public static void main(String[] args) throws IOException {
String fileName = "list.txt";
// 初始化数据
// 创建集合容器
ArrayList<Student> list = new ArrayList<Student>();
//从文件中读取数据存入到集合
readFromFile(list, fileName);
// // ====================测试数据===================
// Student s1 = new Student("9001", "张三", "18", "北京");
// Student s2 = new Student("9002", "张三3", "18", "北京");
// Student s3 = new Student("9003", "张三4", "18", "北京");
// list.add(s1);
// list.add(s2);
// list.add(s3);
// // ====================测试数据===================