A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© LiuWei1989 中级黑马   /  2014-11-27 21:13  /  1161 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

ArrayList用面向过程面向对象两种方法判断元素是否含有指定元素
package com.arraylist;

import java.util.ArrayList;

public class ArrayListDemo4 {
        public static void main(String[] args) {
                //创建集合对象
                ArrayList< String> a = new ArrayList<String>();
                //创建集合元素
                a.add("hello");
                a.add("world");
                a.add("java");
                //面向过程遍历
                Object [] obj = a.toArray();
                for (int i = 0; i < obj.length; i++) {
                        if ("java".equals(obj)) {
                                System.out.println(obj);
                                System.out.println(i);
                        }
                }
                System.out.println("-----------");
                //面向对象遍历
                System.out.println(a.contains("java"));
                System.out.println(a.toString());
        }
}
用迭代器遍历集合
package com.arraylist;

import java.util.ArrayList;
import java.util.Iterator;

public class ArrayListDemo5 {
        public static void main(String[] args) {
                //创建集合对象
                ArrayList<String> a = new ArrayList<String>();
                //添加集合元素
                a.add("hello");
                a.add("world");
                a.add("java");
                //迭代器实现集合存储遍历
                Iterator<String> it = a.iterator();
                while(it.hasNext()){
                        System.out.println(it.next());
                }
        }
}
集合的功能
package com.arraylist;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.Iterator;

public class CollectionDemo {
        public static void main(String[] args) {
                //创建集合
                Collection<String> c = new ArrayList<String>();
                Collection<String> c1 = new ArrayList<String>();
                //添加功能
                c.add("hello");
                c.add("world");
                c.add("java");
                c1.add("hello");
                c1.add("world");
                c1.add("java");
                c1.add("javase");
                c1.add("javame");
                System.out.println(c);
                System.out.println("----------");
                //删除功能
                System.out.println(c.remove("java"));
                System.out.println(c);
                System.out.println("----------");
                //判断功能
                System.out.println(c.isEmpty());
                System.out.println(c.contains("world"));
                System.out.println("----------");
                //遍历功能
                Iterator<String> it = c.iterator();
                System.out.println(c);
                System.out.println("----------");
                //长度功能
                for (int i = 0; i < c.size(); i++) {
                        System.out.println(c);
                        break;
                }
                System.out.println("-------------------");
                //交集功能
                System.out.println(c1.retainAll(c));
                System.out.println(c.retainAll(c1));
                System.out.println("---------------");
                //把集合转换成数组
                Object [] obj = c1.toArray();
                for (int i = 0; i < obj.length; i++) {
                        System.out.println(obj);
                }
        }
}
为什么转换成数组遍历只能显示两个元素?
List的特有功能
package com.arraylist;

import java.util.ArrayList;
import java.util.List;
public class ListDemo {
        public static void main(String[] args) {
                //创建List集合对象
                List<String> li = new ArrayList<String>();
                //添加功能
                li.add("hello");
                li.add("world");
                li.add("java");
                li.add("javase");
                li.add("javame");
                System.out.println(li);
                System.out.println("--------------");
                //删除功能
                System.out.println(li.remove("world"));
                System.out.println(li);
                System.out.println("--------------");
                //修改功能
                System.out.println(li.set(3, "javahaha"));
                System.out.println(li);
                System.out.println("---------------");
                //获取功能
                System.out.println(li.indexOf("hello"));
                System.out.println(li.get(3));
                System.out.println();
                //截取功能
                System.out.println(li.subList(1, 3));
        }
}
ArrayList遍历package com.arrayList;
import java.util.ArrayList;
import javax.print.DocFlavor.STRING;
public class ArrayListDemo {        public static void main(String[] args) {                //创建集合对象                ArrayList<String> a = new ArrayList<String>();                //创建集合元素                a.add("hello");                a.add("world");                a.add("java");                //加强for遍历集合元素                for (String string : a) {                        System.out.println(string);                }        }}

1 个回复

倒序浏览
ArrayList储存自定义Student对象遍历

package com.arrayList;

public class Student {
        private String name;
        private int age;
        public Student() {
                super();
                // TODO Auto-generated constructor stub
        }
        public Student(String name, int age) {
                super();
                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;
        }
        @Override
        public String toString() {
                return "Student [name=" + name + ", age=" + age + "]";
        }
}

package com.arrayList;

import java.util.ArrayList;

public class StudentDemo {
        public static void main(String[] args) {
                //创建集合对象
                ArrayList<Student> a = new ArrayList<Student>();
                //创建学生对象并赋值
                Student s1 = new Student("小黑",20);
                Student s2 = new Student("小蓝",15);
                Student s3 = new Student("小绿",25);
                //创建集合元素
                a.add(s1);
                a.add(s2);
                a.add(s3);
                //普通for循环遍历
                for (int i = 0; i < a.size(); i++) {
                        System.out.println(a.get(i).getName()+"*****"+a.get(i).getAge());
                }
                //加强for循环遍历
                for (Student student : a) {
                        System.out.println(student);
                }
        }
}

ArrayList创建新元素存储不重复元素

package cn.arraylist1;

import java.util.ArrayList;

/**
* 一个字符串集合ArrayList中含有如下元素: hello, world, java, hello, .net, java, php, ios,
* java, android,world。
*
* 要求编写程序,获得一个没有重复元素的集合。
*
* @author itcast
*
*         思路: 1. 新建一个集合,该集合是这个程序要返回的没有重复元素的集合 2.
*         遍历原集合,把遍历出来的每一个元素都存入到新集合中,但是在存入之前先判断一下:新的集合中是否已经包含这个元素了 3.
*         如果包含该元素,就不添加进新集合,如果不包含该元素,就添加
*/
public class ArrayListDemo {
        public static void main(String[] args) {
                //创建集合对象
                ArrayList<String> a =  new ArrayList<String>();
                //创建集合元素
                a.add("hello");
                a.add("world");
                a.add("java");
                a.add("hello");
                a.add("hava");
                a.add("java");
                a.add("worr");
                //创建新的集合存储不重复的元素
                ArrayList<String> a1 = new ArrayList<String>();
                //遍历旧的集合
                for (String string : a) {
                        //加强for抽取不重复的元素
                        if (!a1.contains(string)) {
                                a1.add(string);
                        }
                }
                //加强for遍历新的集合元素
                for (String string : a1) {
                        System.out.println(string);
                }
        }
}

LinkedList遍历集合元素

package cn.arraylist1;

import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;

public class LinkedListDemo {
        public static void main(String[] args) {
                //创建集合对象
                List<String> li = new LinkedList<String>();
                //创建集合元素
                li.add("hello");
                li.add("world");
                li.add("java");
                //用迭代器存储元素
                Iterator<String> it = li.iterator();
                //while循环遍历集合元素
                while(it.hasNext()){
                        String s = it.next();
                        System.out.println(s);
                }
                System.out.println();
                //用加强for循环遍历集合元素.
                for (String string : li) {
                        System.out.println(string);
                }
        }
}

重写equals方法遍历不重复元素:

package com.arraylist;

public class Student {
        private String name;
        private int age;
        public Student() {
                super();
                // TODO Auto-generated constructor stub
        }
        public Student(String name, int age) {
                super();
                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;
        }
        @Override
        public int hashCode() {
                final int prime = 31;
                int result = 1;
                result = prime * result + age;
                result = prime * result + ((name == null) ? 0 : name.hashCode());
                return result;
        }
        @Override
        //重写equals方法
        public boolean equals(Object obj) {
                if (this == obj)
                        return true;
                if (obj == null)
                        return false;
                if (getClass() != obj.getClass())
                        return false;
                Student other = (Student) obj;
                if (age != other.age)
                        return false;
                if (name == null) {
                        if (other.name != null)
                                return false;
                } else if (!name.equals(other.name))
                        return false;
                return true;
        }
        @Override
        public String toString() {
                return "Student [name=" + name + ", age=" + age + "]";
        }
       
}

package com.arraylist;

import java.util.ArrayList;
import java.util.Iterator;

public class StudentDemo {
        public static void main(String[] args) {
                //创建集合对象
                ArrayList<Student> a = new ArrayList<Student>();
                //创建学生对象
                Student s1 = new Student("小明",20);
                Student s2 = new Student("小黄",22);
                Student s3 = new Student("小明",20);
                Student s4 = new Student("小蓝",24);
                Student s5 = new Student("小黄",23);
                Student s6 = new Student("小蓝",25);
                //创建集合元素
                a.add(s1);
                a.add(s2);
                a.add(s3);
                a.add(s4);
                a.add(s5);
                a.add(s6);
                //新建集合对象存储不重复的元素
                ArrayList<Student> a1 = new ArrayList<Student>();
                //创建迭代器遍历元素
                Iterator<Student> it = a.listIterator();
                //while循环遍历旧的元素
                while(it.hasNext()){
                        Student s = it.next();
                        //判断不重复的元素
                        if (!a1.contains(s)) {
                                a1.add(s);
                        }
                }
                //遍历新的不重复元素
                for (Student student : a1) {
                        System.out.println(student);
                }
        }
}

Vector遍历

package com.arraylist;

import java.util.Enumeration;
import java.util.Vector;

public class VectorDemo {
        public static void main(String[] args) {
                //vector类创建集合元素
                Vector<String> v = new Vector<String>();
                //创建集合元素
                v.add("hello");
                v.add("world");
                v.add("java");
                //加强for循环遍历集合元素
                for (String string : v) {
                        System.out.println(string);
                }
                System.out.println("--------------");
                //vector畠迭代器
                Enumeration<String> en = v.elements();
                while(en.hasMoreElements()){
                        String s = (String)en.nextElement();
                        System.out.println(s);
                }
        }
}

LinkedList的特有功能

package com.arraylist;

import java.util.LinkedList;

public class LinkedListDemo {
        public static void main(String[] args) {
                //创建LinkedList的集合
                LinkedList<String> li = new LinkedList<String>();
                //创建集合元素
                li.add("hello");
                li.add("world");
                li.add("java");
                //添加功能
                li.addFirst("javame");
                li.addLast("javase");
                System.out.println(li);
                System.out.println("---------------");
                //获取功能
                System.out.println(li.getFirst());
                System.out.println(li.getLast());
                System.out.println("-------------");
                //删除功能
                System.out.println(li.removeFirst());
                System.out.println(li.removeLast());
                System.out.println(li);
        }
}

LinkedList模拟栈集合

package com.arraylist;

import java.util.LinkedList;

public class MyStack {
        //自定义栈集合
        private LinkedList link;
        //定义创建集合功能
        public MyStack(){
                link = new LinkedList();
        }
        //定义添加元素功能
        public void add(Object obj){
                link.addFirst(obj);
        }
        //定义获取元素功能
        public Object get(int index){
                return link.get(index);
        }
        //定义遍历功能
        public int size(){
                return link.size();
        }
}

package com.arraylist;

import java.util.Iterator;

public class LinkedListDemo1 {
        public static void main(String[] args) {
                //实现创建对象
                MyStack ms = new MyStack();
                //实现添加元素
                ms.add("hello");
                ms.add("world");
                ms.add("java");
                //实现获取元素
                System.out.println(ms.get(0));
                System.out.println(ms.get(1));
                System.out.println(ms.get(2));
                System.out.println("-----------");
                //实现遍历功能
                for (int i = 0; i < ms.size(); i++) {
                        String s = (String)ms.get(i);
                        System.out.println(s);
                }
        }
}

增强for

package com.arraylist;

import java.sql.Array;
import java.util.ArrayList;

public class ForDemo {
        public static void main(String[] args) {
                //整形数组
                int [] arr = {9,8,7,6,5,4};
                //普通for
                for (int i = 0; i < arr.length; i++) {
                        System.out.print(arr[i]);
                }
                System.out.println();
                System.out.println("--------------");
                //增强for
                for (int i : arr) {
                        System.out.print(i);
                }
                System.out.println();
                System.out.println("--------------");
                String [] s = {"hello","world","java"};
                //增强for
                for (String string : s) {
                        System.out.println(string);
                }
                //集合
                ArrayList<String> a = new ArrayList<String>();
                a.add("hello");
                a.add("javase");
                a.add("world");
                //增强for
                for (String string : a) {
                        System.out.println(string);
                }
        }
}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马