文章目录
一、集合的遍历方式
二、添加数字并遍历
三、添加学生对象并遍历
四、添加学生对象并遍历
五、添加用户对象并判断是否存在
六、添加手机对象并返回要求的数据
七、创建学生管理系统(*****)
一、集合的遍历方式
需求:定义一个集合,添加字符串,并进行遍历。
遍历格式参照:[元素1,元素2,元素3]。
import java.util.ArrayList;
public class ArrayListTest1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//1.创建一个集合
ArrayList<String> list=new ArrayList<>();
//2.添加元素
list.add("aaa");
list.add("bbb");
list.add("ccc");
list.add("ddd");
//3.遍历集合
System.out.print("[");
for(int i=0;i<list.size();i++) {
if(i == list.size()-1) {
System.out.print(list.get(i));
}else {
System.out.print(list.get(i)+", ");
}
}
System.out.print("]");
}
}
二、添加数字并遍历
需求:定义一个集合,添加数字,并进行遍历。
遍历格式参照:[元素1,元素2,元素3]。
import java.util.ArrayList;
public class ArrayListTest2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//1.创建一个集合
ArrayList<Integer> list=new ArrayList<>();
//2.添加元素
list.add(1);
list.add(2);
list.add(3);
list.add(4);
//3.遍历集合
System.out.print("[");
for(int i=0;i<list.size();i++) {
if(i == list.size()-1) {
System.out.print(list.get(i));
}else {
System.out.print(list.get(i)+", ");
}
}
System.out.print("]");
}
}
三、添加学生对象并遍历
需求:定义一个集合,添加一些学生对象,并进行遍历
学生类的属性为:姓名,年龄。
public class Student_Test3 {
private String name;
private int age;
public Student_Test3() {
}
public Student_Test3(String name,int age) {
this.name=name;
this.age=age;
}
public void setName(String name) {
this.name=name;
}
public String getName() {
return name;
}
public void setAge(int age) {
this.age=age;
}
public int getAge() {
return age;
}
}
import java.util.ArrayList;
public class ArrayListTest3 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//1.创建一个集合
ArrayList<Student_Test3> list=new ArrayList<>();
//2.创建学生对象
Student_Test3 st1=new Student_Test3("张三",23);
Student_Test3 st2=new Student_Test3("李四",24);
Student_Test3 st3=new Student_Test3("王五",25);
//3.将学生对象添加到集合里
list.add(st1);
list.add(st2);
list.add(st3);
//4.遍历集合
for(int i=0;i<list.size();i++) {
Student_Test3 stu=list.get(i);
System.out.println(stu.getName()+", "+stu.getAge());
}
}
}
四、添加学生对象并遍历
需求:定义一个集合,添加一些学生对象,并进行遍历
学生类的属性为:姓名,年龄。
要求:对象的数据来自键盘录入
public class Student_Test3 {
private String name;
private int age;
public Student_Test3() {
}
public Student_Test3(String name,int age) {
this.name=name;
this.age=age;
}
public void setName(String name) {
this.name=name;
}
public String getName() {
return name;
}
public void setAge(int age) {
this.age=age;
}
public int getAge() {
return age;
}
}
import java.util.ArrayList;
import java.util.Scanner;
public class ArrayListTest4 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//1.创建一个集合
ArrayList<Student_Test3> list=new ArrayList<>();
//2.键盘录入学生信息
Scanner sc=new Scanner(System.in);
for(int i=0;i<3;i++) {
Student_Test3 s=new Student_Test3();
System.out.println("请输入学生的姓名:");
String name=sc.next();
System.out.println("请输入学生的年龄:");
int age=sc.nextInt();
//把name 和age 赋值给学生对象
s.setName(name);
s.setAge(age);
//把学生信息添加到集合中
list.add(s);
}
//3.遍历集合
for(int i=0;i<list.size();i++) {
Student_Test3 stu=list.get(i);
System.out.println(stu.getName()+", "+stu.getAge());
}
}
}
五、添加用户对象并判断是否存在
需求:
1.main方法中定义一个集合,存入三个用户对象。
用户属性为:id,username,password
2.要求:定义一个方法,根据id查找对应的用户信息。
如果存在,返回true
如果不存在,返回false
public class User {
private String id;
private String username;
private String password;
public User() {
}
public User(String id,String username,String password) {
this.id=id;
this.username=username;
this.password=password;
}
public void setId(String id) {
this.id=id;
}
public String getId() {
return id;
}
public void setUsername(String username) {
this.username=username;
}
public String getUsername() {
return username;
}
public void setPassword(String password) {
this.password=password;
}
public String getPassword() {
return password;
}
}
import java.util.ArrayList;
public class ArrayListTest5 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//1.创建一个集合
ArrayList<User> list=new ArrayList<>();
//2.创建用户对象
User u1=new User("001","zhangsan","1234501");
User u2=new User("002","lisi","1234502");
User u3=new User("003","wangwu","1234503");
//3.将用户对象添加到集合中
list.add(u1);
list.add(u2);
list.add(u3);
//
boolean flag=check(list,"005");
if(flag) {
System.out.println("存在");
}else {
System.out.println("不存在");
}
}
public static boolean check(ArrayList<User> list,String id) {
for(int i=0;i<list.size();i++) {
if(list.get(i).getId().equals(id)) {
return true;
}
}
return false;
}
}
六、添加手机对象并返回要求的数据
需求:
定义JavaBean类:Phone
Phone的属性:品牌、价格。
main方法中定义一个集合,存入三个手机对象。
分别为:小米,1000。苹果,8000。锤子,2999。
定义一个方法,将价格低于3000的手机信息返回
public class Phone {
private String brand;
private int price;
public Phone() {
}
public Phone(String brand,int price) {
this.brand=brand;
this.price=price;
}
public void setBrand(String brand) {
this.brand=brand;
}
public String getBrand() {
return brand;
}
public void setPrice(int price) {
this.price=price;
}
public int getPrice() {
return price;
}
}
import java.util.ArrayList;
public class ArrayListTest6 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//1.创建一个集合
ArrayList<Phone> list=new ArrayList<>();
//2.创建用户对象
Phone p1=new Phone("小米",1000);
Phone p2=new Phone("苹果",8000);
Phone p3=new Phone("锤子",2999);
//3.添加到集合中
list.add(p1);
list.add(p2);
list.add(p3);
//4.调用方法
ArrayList<Phone> phoneInfoList=getPhoneInfo(list);
//5.遍历集合
for(int i=0;i<phoneInfoList.size();i++) {
Phone phone=phoneInfoList.get(i);
System.out.println(phone.getBrand()+", "+phone.getPrice());
}
}
public static ArrayList<Phone> getPhoneInfo(ArrayList<Phone> list) {
ArrayList<Phone> resultList=new ArrayList<>();
for(int i=0;i<list.size();i++) {
Phone p=list.get(i);
int price=p.getPrice();
if(price<3000) {
resultList.add(p);
}
}
return resultList;
}
}
七、创建学生管理系统
需求:
public class Student {
private String id;
private String name;
private int age;
private String address;
public Student() {
}
public Student(String id,String name,int age,String address) {
this.id=id;
this.name=name;
this.age=age;
this.address=address;
}
public void setName(String name) {
this.name=name;
}
public String getName() {
return name;
}
public void setAge(int age) {
this.age=age;
}
public int getAge() {
return age;
}
public void setId(String id) {
this.id=id;
}
public String getId() {
return id;
}
public void setAddress(String address) {
this.address=address;
}
public String getAddress() {
return address;
}
}
import java.util.ArrayList;
import java.util.Scanner;
public class Test_综合练习 {
public static void main(String[] args) {
// TODO Auto-generated method stub
ArrayList<Student> list=new ArrayList<>();
loop:while(true) {
System.out.println("-------------欢迎来到黑马学生管理系统--------------");
System.out.println("1:添加学生");
System.out.println("2:删除学生");
System.out.println("3:修改学生");
System.out.println("4:查询学生");
System.out.println("5:退出");
Scanner sc=new Scanner(System.in);
System.out.println("请输入您的选择:");
String choose=sc.next();
switch(choose) {
case "1":addStudent(list);break;
case "2":deleteStudent(list);break;
case "3":updateStudent(list);break;
case "4":queryStudent(list);break;
case "5":System.out.println("5:退出");break loop;
default:System.out.println("没有这个选项");
}
}
}
public static void addStudent(ArrayList<Student> list) {
Scanner sc=new Scanner(System.in);
//创建学生对象
Student s=new Student();
while(true) {
System.out.println("请输入学生的id:");
String id=sc.next();
boolean flag=contains(list,id);
if(flag) {
//表示id已经存在,需要重新输入
System.out.println("id已经存在,请重新输入");
}else {
s.setId(id);
break;
}
}
System.out.println("请输入学生的姓名:");
String name=sc.next();
s.setName(name);
System.out.println("请输入学生的年龄:");
int age=sc.nextInt();
s.setAge(age);
System.out.println("请输入学生的家庭住址:");
String address=sc.next();
s.setAddress(address);
//将学生对象添加到数组当中
list.add(s);
//提示一下用户信息添加成功
System.out.println("用户信息添加成功!");
}
public static void deleteStudent(ArrayList<Student> list) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入要删除的学生id:");
String id=sc.next();
//查询id在集合中的索引
int index=getIndex(list,id);
if(index>=0) {
list.remove(index);
System.out.println("id为:"+id+"的学生删除成功");
}else {
System.out.println("id不存在,删除失败");
}
}
public static void updateStudent(ArrayList<Student> list) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入要修改学生的id:");
String id=sc.next();
int index=getIndex(list,id);
if(index==-1) {
System.out.println("要修改的id"+id+"不存在,请重新输入");
return;
}
Student stu=list.get(index);
//输入其他的新型修改
System.out.println("请输入要修改的姓名:");
String newName=sc.next();
stu.setName(newName);
System.out.println("请输入要修改的年龄:");
int newAge=sc.nextInt();
stu.setAge(newAge);
System.out.println("请输入要修改的家庭住址::");
String newAddress=sc.next();
stu.setAddress(newAddress);
System.out.println("学生信息修改成功!");
}
public static void queryStudent(ArrayList<Student> list) {
if(list.size()==0) {
System.out.println("当前无学生信息,请添加后在查询");
//结束方法
return;
}
System.out.println("id\t\t姓名\t\t年龄\t"+"家庭住址");
for(int i=0;i<list.size();i++) {
Student stu=list.get(i);
System.out.println(stu.getId()+"\t"+stu.getName()+"\t\t"+stu.getAge()+"\t"+stu.getAddress());
}
}
public static boolean contains(ArrayList<Student> list,String id) {
for(int i=0;i<list.size();i++) {
Student stu=list.get(i);
if(stu.getId().equals(id)) {
return true;
}
}
return false;
}
public static int getIndex(ArrayList<Student> list,String id) {
for(int i=0;i<list.size();i++) {
Student stu=list.get(i);
if(stu.getId().equals(id)) {
return i;
}
}
return-1;
}
}