import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
/*
1.集合可以存储任意类型的对象数据,数组只能存储同一类型数据
2,集合长度会发生变化,数组长度固定
*/
public class Demo4 {
public static void main(String[] args) {
Collection c=new ArrayList();//创建集合
c.add(“qw”);
c.add(3.122);
System.out.println(c.add(“s”));//添加是否成功
System.out.println©;
Collection c1=new ArrayList();//创建集合
c1.add("xiaoming");
c1.add("haha");
c.addAll(c1);//集合中增加集合
System.out.println(c);
Object[] arr=c.toArray();//将集合元素储存在一个Object的数组中返回
System.out.println("1111"+Arrays.toString(arr));
//删除
//
System.out.println(c.remove("haha"));//删除指定元素
System.out.println(c);
//c.removeAll(c1);//删除c与c1的交集元素
//System.out.println(c);
c.retainAll(c1);//保留交集元素,其余删除
System.out.println(c);
//c.clear();//清楚所有元素
System.out.println(c.isEmpty());//是否为空
System.out.println(c.contains("xiaoming"));//是否包含某元素
}
}
import java.util.ArrayList;
import java.util.Collection;
//集合的运用
class Person{
int id;
String name;
public Person(int id,String name) {
// TODO Auto-generated constructor stub
this.id=id;
this.name=name;
}
@Override
public String toString() {//重写toString方法
// TODO Auto-generated method stub
return "{"+this.id+":"+this.name+"}";
}
@Override
public boolean equals(Object obj) {
Person p=(Person)obj;
return this.id==p.id;
}
//一般重写equals方法,都会重写hashcode方法
@Override
public int hashCode() {
return this.id;
}
}
public class Demo5 {
public static void main(String[] args) {
Collection c=new ArrayList();
c.add(new Person(23,"xiaoming"));//创建Person的对象,使用c.add()加入集合元素
c.add(new Person(22,"xiaohong"));
c.add(new Person(24,"xiaojun"));
System.out.println(c);
System.out.println(c.contains(new Person(23,"xiaohong")));
Object[] arr=c.toArray();
for(int i=0;i<arr.length;i++){
Person p=(Person)arr[i];//从Object数组中取出来的元素只能用Object声明,如果需要转成其他类型只能强制类型转换
if(p.id==23){
System.out.println(p);
}
}
Collection c1=new ArrayList();
c1.add(new Person(23,"xiaoming"));//创建Person的对象,使用c.add()加入集合元素
c1.add(new Person(22,"xiaohong"));
System.out.println(c.containsAll(c1));//c是否包含c1中的所有元素
}
}
//登录功能
import java.util.ArrayList;
import java.util.Collection;
import java.util.Scanner;
//创建用户类,id+code
class user{
int id;
String code;
public int getId() {//Ctrl+E
return id;
}
public void setId(int id) {
this.id = id;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public user(int id,String code) {
this.id=id;
this.code=code;
}
@Override
public String toString() {
// TODO Auto-generated method stub
return "{用户ID:"+this.id+"密码:"+this.code+"}";
}
@Override
public int hashCode() {
// TODO Auto-generated method stub
return this.id;
}
@Override
public boolean equals(Object obj) {
// TODO Auto-generated method stub
user u=(user) obj;
return this.id==u.id;
}
}
public class Demo6 {
private static int id;
private static String code;
static Collection c=new ArrayList();
public static void main(String[] args) {
//功能选择
while(true){
System.out.println("提示用户功能选择 A(注册) B(登录)");
Scanner sc=new Scanner(System.in);
String ch=sc.next();
switch(ch){
case "a":
case "A":
reg(c);
break;
case "B":
case "b":
login(c);
break;
default:System.out.println("用户功能输入错误,请重新选择");
}
}
}
public static void login(Collection c) {
System.out.println("登录:请输入ID");
Scanner sc2=new Scanner(System.in);
int id1=sc2.nextInt();
user us2=new user(id1, null);
if(!c.contains(us2)){//这里需要重写equals
System.out.println("ID不存在");
}
else{
System.out.println("请输入密码");
Scanner sc3=new Scanner(System.in);
String code1=sc3.next();
user us1=new user(id1, code1);
if(c.contains(us1)){//这里需要重写equals
System.out.println("登录成功");
}
else{
System.out.println("登录失败");
}
}
}
public static void reg(Collection c) {
System.out.println("请输入ID");
Scanner sc1=new Scanner(System.in);
int id=sc1.nextInt();
user us=new user(id, null);//将ID给它,进行判断是否有重复
if(c.contains(us)){//这里需要重写equals
System.out.println("重复");
}
else{
System.out.println("请输入密码");
Scanner sc2=new Scanner(System.in);
String code=sc2.next();
c.add(new user(id, code));
System.out.println("用户注册成功!!!");
System.out.println(c);
}
}
}