java基础第十天_集合

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java基础第十天_集合相关的知识,希望对你有一定的参考价值。


练习vector 定义student类 name age sex 重写equals

1、remove(int index);//删除指定位置的元素

2、remove(Object o);//删除指定对象,考查删除对象的规则是什么?

3、removeAll(Collection col);//删除指定集合中的所有元素。

4、contains(Object o);//是否包含

5、contains(Collection col);//是否包含集合。


=================================================================================================

练习vector 定义student类 name age sex 重写equals

重写equals:先判断是否对象为空,然后判断三个属性相同才相同

public class Student {

private String name ;

private int age ;

private char sex ;

public Student(){

}

//重载构造函数

public Student(String name,int age,char sex){

this.name = name ;

this.age = age ;

this.sex = sex ;

}

//构造函数重载

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;

}

public char getSex() {

return sex;

}

public void setSex(char sex) {

this.sex = sex;

}

/**

* 重写equals方法.

*/

public boolean equals(Object obj) {

if(obj == null){

return false ;

}

if(this == obj){

return true ;

}

boolean nameEqu = false ;

if(obj.getClass() == Student.class){

Student s = (Student)obj;

//名字为空

if(this.name == null ){

if(s.name == null){

nameEqu = true ;

}

else{

nameEqu = false ;

}

}

//name不为空

else{

nameEqu = this.name.equals(s.name);

}

//处理age

boolean ageEqu = (this.age == s.age) ;

//处理sex

                        

                    boolean sexEqu = false ;

//性别为空

if(String.valueOf(this.sex)== null ){

if(String.valueOf(s.sex) == null){

sexEqu = true ;

}

else{

sexEqu = false ;

}

}

//性别不为空

else{

sexEqu = String.valueOf(this.sex).equals(s.sex);

}

return nameEqu && ageEqu&&sexEqu ;

}

return false ;

}

}



import java.util.Vector;


public class VectorDemo {

public static void main(String[] args) {

Vector<Student> vector = new Vector<Student>();

Student s1 = new Student("tom", 10);

vector.add(s1);

vector.add(new Student("tom2",11));

vector.add(0, new Student("tom3", 12));

vector.remove(0);

vector.add(10, new Student());

System.out.println();

}

}

1、remove(int index);//删除指定位置的元素

2、remove(Object o);//删除指定对象,考查删除对象的规则是什么?

3、removeAll(Collection col);//删除指定集合中的所有元素。

4、contains(Object o);//是否包含

5、contains(Collection col);//是否包含集合。

import java.util.ArrayList;

import java.util.List;


public class CollectionDemo {


public static void main(String[] args) {

List<Student> list = new ArrayList<Student>();

Student s1 = new Student("student1");

Student s2 = new Student("student2");

Student s3 = new Student("student3");

Student s4 = new Student("student4");

Student s5 = new Student("student5");

list.add(s1);

list.add(s2);

list.add(s3);

list.add(s4);

list.add(s5);

getlist(list);

System.out.println("删除第一个学生=============");

list.remove(0);

getlist(list);

System.out.println("通过remove(object o)删除对象");

list.remove(s2);

getlist(list);

System.out.println("list 是否包含 s1 " + list.contains(s1));

System.out.println("list 是否包含 s3 " + list.contains(s3));

List<Student> list2 = new ArrayList<Student>();

list2.add(s2);

list2.add(s3);

System.out.println("list 是否包含 list2 : " + list.containsAll(list2));

List<Student> list3 = new ArrayList<Student>();

list3.add(s3);

list3.add(s4);

System.out.println("list 是否包含 list3 : " + list.containsAll(list3));

list.removeAll(list3);

getlist(list);


}

public static void getlist(List<Student> list) {

for (int i = 0; i < list.size(); i++) {

Student s = list.get(i);

System.out.println(s.getName());

}

}


}


class Student {

private String name;

public Student(String name) {

this.name = name;

}


public String getName() {

return name;

}


public void setName(String name) {

this.name = name;

}

}

问题:

心得:

1.List :列表 接口          实现  ArrayList()

contains()   //包含对象

containsAll()   //包含list、collection

remove() //移除对象

removeAll() //移除collection  可以从一个collection删除包含交集的另一个collection

2.[ ]数组

---------------------

length //长度属性

3.String

---------------------------

length() //长度方法

4.interface collection

---------------------------

size() //方法

isEmpty() //判断集合为空集合 运算

List   //有序,可重复

Set //无序,不重复

Map //Key-Value


本文出自 “作业” 博客,请务必保留此出处http://10718270.blog.51cto.com/10708270/1782506

以上是关于java基础第十天_集合的主要内容,如果未能解决你的问题,请参考以下文章

IT十八掌作业_java基础第十天_集合

Java基础第十天总结

java学习--基础知识进阶第十天--标准输入流 & 转换流 & 打印流对象操作流 Properties集合

大数据Java基础第十天作业

大数据JAVA基础第十天

java学习--基础知识进阶第十天--笔记