黑马程序员技术交流社区

标题: 彩鸟上路 多指教 [打印本页]

作者: 荆轲    时间: 2018-4-16 20:31
标题: 彩鸟上路 多指教
   集合ArrayList 生成格式
ArrayList<引用类型   E> arrList名称=new ArrayList<引用类型   E>();  E指引用类型
arrList.add() 可以直接加入内容;                                       index指索引
arrList.add(index,内容) 在索引处添加内容,原先内容想后以移动一位;
public E get(int index) 获取刚处的元素
public int size() 获取集合的长度
public boolean remove(Object o) 移除集合中该元素且返回该元素
public E set(index,E) 修改索引处的元素 且返回该元素
public E remove(index) 删除该元素 且返回他
集合ArrayList 是一个可以改变长度的容量;可以对多个对象进行存储
遍历集合
可以先定义一个集合 arr 用于存放 对象之类的 引用类型
for(int i=0; i<arr.size();i++){//利用for循环来实现
                        Student s=arr.get(i);//定义一个 对象 s来接受 集合中的每一个元素
                        System.out.println(s.getId()+"\t"+s.getName()+"\t"+s.getAge()+"\t"+s.getAddress());s.get()就是获取元素中的 成员变量
                }
往集合里面添加元素
Student s=new Student();//定义一个 学生对象 s来接受 集合中的每一个元素
                        //获取 对象的各种数据
                        s.setId(id);
                        s.setName(name);
                        s.setAge(age);
                        s.setAddress(address);
                        //把对象添加到集合中
                        arr.add(s);
下面是我自己根据学生系统做的一个 侠客记录系统 ps(代码是一样的.改了下名称)
public class StudentManagerTest {
        public static void main(String[] args) {
                Scanner sc=new Scanner(System.in);
                ArrayList<Student> s=new ArrayList<Student>();//生成一个集合用于存放侠客
               
                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 退出登录系统");
                System.out.println("请选择选项");
                String Strnum=sc.nextLine();//
                switch (Strnum){
                case "1"://查看侠客的人员
                        findArrayList(s);
                        break;
                case "2"://输入你认为合适的侠客
                        addArrayList(s);
                        break;
                case "3"://淘汰侠客
                        deleteArrayList(s);
                        break;
                case "4"://修改侠客人员信息
                        gaiArrayList(s);
                        break;
                case "5":System.out.println("退出系统");
                default :
                        System.exit(0);
                        System.out.println("输入的选项不存在,请输入正确的选项!");
                }
               
                }
               
                }
                public  static void findArrayList(ArrayList<Student> arr){
                if(arr.size()==0){
                        System.out.println("----暂时并无侠客的存在");
                }else{
                System.out.println("编号 "+"\t"+"姓名     --年龄---地址");
                for(int i=0; i<arr.size();i++){
                        Student s=arr.get(i);
                        System.out.println(s.getId()+"\t"+s.getName()+"\t"+s.getAge()+"\t"+s.getAddress());
                }
               
                }
        }
                public static void addArrayList(ArrayList<Student> arr){

                        Scanner sc=new Scanner(System.in);
                        System.out.println("请输入侠客编号");
                        String id=sc.nextLine();
                        for (int i = 0; i <arr.size(); i++) {
                                Student s=arr.get(i);
                                if(s.getId().equals(id)){
                                        System.out.println("你输入的侠客编号已经存在 请重新输入一个新的");
                                        return;
                                }
                        }
                        System.out.println("请输入侠客名称");
                        String name=sc.nextLine();
                        System.out.println("请输入侠客年龄");
                        String age=sc.nextLine();
                        System.out.println("请输入侠客所在地");
                        String address=sc.nextLine();
                        Student s=new Student();
                        s.setId(id);
                        s.setName(name);
                        s.setAge(age);
                        s.setAddress(address);
                        arr.add(s);
                        System.out.println("添加成功");
                                       
                }
                public  static void deleteArrayList(ArrayList<Student> arr){
                        Scanner sc=new Scanner(System.in);
                        System.out.println("请输入侠客编号");
                        String id=sc.nextLine();
                        for (int i = 0; i < arr.size(); i++) {
                                Student s=arr.get(i);
                                if(s.getId().equals(id)){
                                        arr.remove(i);
                                        System.out.println("删除成功");
                                }else{
                                        System.out.println("并无该编号的侠客存在");
                                }
                        }
                }
                public static void gaiArrayList(ArrayList<Student> arr){
                        Scanner sc=new Scanner(System.in);
                        System.out.println("输入侠客的编号");
                        String id=sc.nextLine();
                        for (int i = 0; i < arr.size(); i++) {
                                Student s=arr.get(i);
                                if(s.getId().equals(id)){
                                        System.out.println("请输入侠客名称");
                                        String name=sc.nextLine();
                                        System.out.println("请输入侠客年龄");
                                        String age=sc.nextLine();
                                        System.out.println("请输入侠客所在地");
                                        String address=sc.nextLine();
                                        Student s2=new Student();
                                        s2.setId(id);
                                        s2.setName(name);
                                        s2.setAge(age);
                                        s2.setAddress(address);
                                        arr.set(i, s2);
                                        System.out.println("修改成功");
                                        return;
                                }
                                System.out.println("并无该编号的侠客存在1");
                        }
                }
               
               
        }
               
这就是我给大家分享。 菜鸟上路 可以指点指点哈。


作者: cj1234    时间: 2018-4-18 12:04
你的技术贴写得我看了很舒服




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2