美文网首页
Java 基础 35 数据结构和ArrayList集合的相关案例

Java 基础 35 数据结构和ArrayList集合的相关案例

作者: 小熊先生很不开心 | 来源:发表于2018-02-02 21:36 被阅读18次

    1.1 数据结构

    • 什么是数据结构?

    1.1.1 常见数据结构之栈和队列

    ArrayList.png

    1.1.2常见数据结构之数组和链表

    ArrayList2.png

    1.2 ArrayList集合的相关案例

    1.2.1 List集合子类特点及ArrayList集合存储字符串并遍历

    • List:

      • ArrayList:底层数据结构是数组,查询快,增删慢
      • LinkedList:底层数据结构是链表,查询慢,增删快
    • ArrayList存储字符串并遍历:

      • 迭代器
      • 普通for
      • 增强for

    1.2.1.1 案例代码

    package com.itheima_01;
    
    import java.util.ArrayList;
    import java.util.Iterator;
    
    /*
     * List:
     *      ArrayList:底层数据结构是数组,查询快,增删慢
     *      LinkedList:底层数据结构是链表,查询慢,增删快
     * 
     * ArrayList存储字符串并遍历:
     *      A:迭代器
     *      B:普通for
     *      C:增强for
     */
    public class ArrayListDemo {
        public static void main(String[] args) {
            //创建集合对象
            ArrayList<String> array = new ArrayList<String>();
            
            //添加元素
            array.add("hello");
            array.add("world");
            array.add("java");
            
            //迭代器
            Iterator<String> it = array.iterator();
            while(it.hasNext()){
                String s = it.next();
                System.out.println(s);
            }
            System.out.println("-------------");
            
            //普通for
            for(int x=0; x<array.size(); x++) {
                String s = array.get(x);
                System.out.println(s);
            }
            System.out.println("-------------");
            
            //增强for
            for(String s : array) {
                System.out.println(s);
            }
            
        }
    }
    

    1.2.2 ArrayList集合的练习存储自定义对象并遍历

    ArrayList集合存储自定义对象并遍历

    提示:自定义一个学生类,给出成员变量name和age。遍历集合的时候,在控制台输出学生对象的成员变量值。

    • 三种方式遍历
      • 迭代器
      • 普通for
      • 增强for

    LinkedList的使用和ArrayList的相似,所以LinkedList的练习需要大家自己做

    1.2.2.1案例代码

    package com.itheima_02;
    
    public class Student {
        private String name;
        private int age;
    
        public Student() {
    
        }
    
        public Student(String name, int age) {
            this.name = name;
            this.age = age;
        }
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public int getAge() {
            return age;
        }
    
        public void setAge(int age) {
            this.age = age;
        }
    
    }
    
    
    package com.itheima_02;
    
    import java.util.ArrayList;
    import java.util.Iterator;
    
    /*
     * ArrayList集合存储自定义对象并遍历
     * 提示:自定义一个学生类,给出成员变量name和age。遍历集合的时候,在控制台输出学生对象的成员变量值。
     * 三种方式遍历
     *      迭代器
     *      普通for
     *      增强for
     * 
     * LinkedList的使用和ArrayList的相似,所以LinkedList的练习需要大家自己做
     */
    public class ArrayListTest {
        public static void main(String[] args) {
            //创建集合对象
            ArrayList<Student> array = new ArrayList<Student>();
            
            //创建元素对象
            Student s1 = new Student("林青霞",30);
            Student s2 = new Student("张曼玉",35);
            Student s3 = new Student("王祖贤",33);
            
            //把元素添加到集合
            array.add(s1);
            array.add(s2);
            array.add(s3);
            
            //迭代器
            Iterator<Student> it = array.iterator();
            while(it.hasNext()){
                Student s = it.next();
                System.out.println(s.getName()+"---"+s.getAge());
            }
            System.out.println("----------------------");
            
            //普通for
            for(int x=0; x<array.size(); x++) {
                Student s = array.get(x);
                System.out.println(s.getName()+"---"+s.getAge());
            }
            System.out.println("----------------------");
            
            //增强for
            for(Student s : array) {
                System.out.println(s.getName()+"---"+s.getAge());
            }
        }
    }
    

    相关文章

      网友评论

          本文标题:Java 基础 35 数据结构和ArrayList集合的相关案例

          本文链接:https://www.haomeiwen.com/subject/sbcyzxtx.html