声明一个ArrayList,存储一条学生信息,内容为 1 张三 22 男,将信息进行遍历出来
package list;
import java.util.ArrayList;
import java.util.Iterator;
public class student{
public static void main(String[] args) {
ArrayList jiHe = new ArrayList();
xueSheng xueSheng1 = new xueSheng(1,"张三",22,"男");
jiHe.add(xueSheng1);
for (int i = 0; i < jiHe.size(); i++) {
System.out.println(jiHe.get(i).toString());
}
}
}class xueSheng{
int bianhao;String name;int age;String sex;
public xueSheng(int bianhao, String name, int age, String sex) {
super();
this.bianhao = bianhao;
this.name = name;
this.age = age;
this.sex = sex;
}
@Override
public String toString() {
return "xueSheng [bianhao=" + bianhao + ", name=" + name + ", age="
+ age + ", sex=" + sex + "]";
}
}
声明一个学生类,包含编号,名称,年龄,和性别属性,
实例化5名学生对象,将其保存在Set集合中,设置Set集合的泛型为SetXueSheng,遍历该Set集合
package list;
import java.util.*;
import java.util.Map.Entry;
public class set {
public static void main(String[] args) {
HashSet jiHe=new HashSet();
SetXueSheng duiXiang1=new SetXueSheng(1,"诗书三连",18,"男");
SetXueSheng duiXiang2=new SetXueSheng(2,"画唱点赞",19,"男");
SetXueSheng duiXiang3=new SetXueSheng(3,"诗书关注",20,"男");
SetXueSheng duiXiang4=new SetXueSheng(4,"画唱收藏",21,"男");
SetXueSheng duiXiang5=new SetXueSheng(5,"诗书画唱",22,"男");
jiHe.add(duiXiang1);
//第一个都要先放到集合中,之后才用Collections.addAll的方法。
//自己总结的语法:Collections.addAll(集合名,对象名1,对象名2,......)
Collections.addAll(jiHe,duiXiang2,duiXiang3,duiXiang4,duiXiang5);
for(SetXueSheng i:jiHe){
System.out.println(i);
}
}
}
class SetXueSheng{
public int bianhao;
public String name;
public int age;
public String sex;
public SetXueSheng(int bianhao, String name, int age, String sex) {
//super();可写可不写,因为没写父类,所以super();没作用,也没影响
this.bianhao = bianhao;
this.name = name;
this.age = age;
this.sex = sex;
}
@Override
public String toString() {
return "SetXueSheng [bianhao=" + bianhao
+ ", name=" + name + ", age="
+ age + ", sex=" + sex + "]";
}
}
声明一个Map集合,设置泛型键为String,值为学生类,
将题2中的学生类保存在Map集合中,遍历该Map集合
package list;
import java.util.*;
import java.util.Map.Entry;
public class map {
public static void main(String[] args) {
Map MapJiHe=
new HashMap();
//自己总结的语法:Map 集合名=
//new HashMap();
studentMapClass duiXiang1=new studentMapClass(1,"诗书画唱",19,"男");
studentMapClass duiXiang2=new studentMapClass(2,"三连",20,"男");
studentMapClass duiXiang3=new studentMapClass(3,"关注",21,"男");
studentMapClass duiXiang4=new studentMapClass(4,"收藏",22,"男");
studentMapClass duiXiang5=new studentMapClass(5,"宝藏",23,"男");
//集合名.put(键(对应的数据类型的具体数据),值(对象名等));
MapJiHe.put("1",duiXiang1);MapJiHe.put("2",duiXiang2);
MapJiHe.put("3",duiXiang3);
MapJiHe.put("4",duiXiang4);MapJiHe.put("5",duiXiang5);
Iterator> dieDaiQi
=MapJiHe.entrySet().iterator();
//iterator
//[词典]【计】迭代器,迭代程序;
//Iterator(迭代器)是一个接口,它的作用就是遍历容器的所有元素。
//Iterator iter = list.iterator(); // 注意iterator,首字母小写
while(dieDaiQi.hasNext()){
Entry rongQi
=dieDaiQi.next();
//entry英[ˈentri]
//美[ˈentri]
//n.进入(指行动); 进入(指权利等); 参与,加入(指权利、机会);
System.out.println("键为"+rongQi.getKey()
+";值为"+rongQi.getValue());
}
}
}
class studentMapClass{
public int bianhao;
public String name;
public int age;
public String sex;
public studentMapClass(int bianhao,
String name, int age, String sex) {
//super();
this.bianhao = bianhao;
this.name = name;
this.age = age;
this.sex = sex;
}
@Override
public String toString() {
return "studentMapClass [bianhao=" + bianhao + ", name=" + name
+ ", age=" + age + ", sex=" + sex + "]";
}
}
声明个map集合,设置键为班级名称String,值为每个班级的所有学生信息ArrayList,用来存储各个班级的学生信息,存储3个班级的学生信息,并遍历该map集合
package list;
import java.util.*;
import java.util.Map.Entry;
public class mapArrayList {
public static void main(String[] args) {
//可以用"//————————"来当分割线,分层,更容易看懂等
//自己的总结:先声明一个HashMap集合
//再声明3个ArrayList集合,最后用上
//HashMap集合名.put(键(这里声明为String的内容),ArrayList集合名);
HashMap> HashMapJiHe
=new HashMap>();
//————————————————————————————————————————————————————————
ArrayList ArrayListJiHe1
=new ArrayList();//X班
studentMapArrayListClass duiXiang1=
new studentMapArrayListClass(1, "双笙",18,"女");
studentMapArrayListClass duiXiang2=
new studentMapArrayListClass(2, "就是哈比",18,"女");
studentMapArrayListClass duiXiang3=
new studentMapArrayListClass(3, "诺鸽鸽",18,"女");
ArrayListJiHe1.add(duiXiang1);ArrayListJiHe1.add(duiXiang2);
ArrayListJiHe1.add(duiXiang3);
//——————————————————————————————————————————————————————————————————
ArrayList ArrayListJiHe2
=new ArrayList();//XX班
studentMapArrayListClass duiXiang11=
new studentMapArrayListClass(11, "封茗囧茵",18,"女");
studentMapArrayListClass duiXiang22=
new studentMapArrayListClass(22, "等人",18,"男");
studentMapArrayListClass duiXiang33=
new studentMapArrayListClass(33, "都会",18,"男");
ArrayListJiHe2.add(duiXiang11);
ArrayListJiHe2.add(duiXiang22);ArrayListJiHe2.add(duiXiang33);
//————————————————————————————————————————————————————————————————
ArrayList ArrayListJiHe3
=new ArrayList();//XXX班
studentMapArrayListClass duiXiang111=
new studentMapArrayListClass(111, "未来成为",18,"男");
studentMapArrayListClass duiXiang222=
new studentMapArrayListClass(222, "我诗书",18,"男");
studentMapArrayListClass duiXiang333=
new studentMapArrayListClass(333, "画唱后宫",18,"男");
ArrayListJiHe3.add(duiXiang111);
ArrayListJiHe3.add(duiXiang222);
ArrayListJiHe3.add(duiXiang333);
//——————————————————————————————————————————————————
HashMapJiHe.put("X班",ArrayListJiHe1);HashMapJiHe.put("XX班",ArrayListJiHe2);
HashMapJiHe.put("XXX班",ArrayListJiHe3);
//————————————————————————————————————————————————
//声明Iterator的自己总结的语法
//:Iterator>> Iterator名
//= HashMap集合名.entrySet().iterator();
//
//多找到,想到并且记录等
//自己和别人容易理解,熟悉的,
//将其比作自己和别人容易理解,熟悉的。这样可以更好的记忆,理解,
//认为懂了和获得我们大多人定义的真正的懂了。很多东西等都是被定义的,本身并不存在
//所有的班级和学生等的内容会因为声明了Iterator,而被装到Iterator里面,
//
//Iterator等就像一个水杯,内容就像水,声明Iterator就像把水倒进水杯中
//而用hasNext()等来遍历Iterator就像把水从水杯中到倒出来
Iterator>> allneiRongIteratorName
= HashMapJiHe.entrySet().iterator();
//自己总结的遍历Iterator的语法:
//while(Iterator名.hasNext()){
//}
while(allneiRongIteratorName.hasNext()){
//声明一个Entry的自己总结的语法:
//Entry> Entry名
//=Iterator名.next();
Entry> EntryName
=allneiRongIteratorName.next();
//用.next()得到下一条String类型的数据
System.out.println("班级为"+EntryName.getKey());
System.out.println("具体的学生信息为");
//这里情形的自己总结的for遍历集合的语法:
//Entry名.getValue()这里为ArrayList集合
//for(类名 要打印的内容名:集合或集合名){
//System.out.println(要打印的内容名);
//}
for(studentMapArrayListClass valueNeiRong:EntryName.getValue()){
System.out.println(valueNeiRong);
}
}
}
}
//——————————————————————————————————————
class studentMapArrayListClass{
public int bianhao;
public String name;
public int age;
public String sex;
public studentMapArrayListClass(int bianhao, String name, int age,
String sex) {
super();
this.bianhao = bianhao;
this.name = name;
this.age = age;
this.sex = sex;
}
@Override
public String toString() {
return "studentMapClass [bianhao=" + bianhao + ", name=" + name
+ ", age=" + age + ", sex=" + sex + "]";
}
}
制作扑克牌发牌案例
package list;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Random;
public class douDiZhuFaPaiTi5 {
public static void main(String[] args) {
String[] Stringchucundepai = new String[] { "♥A", "♥2", "♥3", "♥4",
"♥5", "♥6", "♥7", "♥8", "♥9", "♥10", "♥J", "♥Q", "♥K", "♠A",
"♠2", "♠3", "♠4", "♠5", "♠6", "♠7", "♠8", "♠9", "♠10", "♠J",
"♠Q", "♠K", "♦A", "♦2", "♦3", "♦4", "♦5", "♦6", "♦7", "♦8",
"♦9", "♦10", "♦J", "♦Q", "♦K", "♣A", "♣2", "♣3", "♣4", "♣5",
"♣6", "♣7", "♣8", "♣9", "♣10", "♣J", "♣Q", "♣K" };
HashMap HSchucundejiadepai = new HashMap<>();
HashMap HSchucundeyidepai = new HashMap<>();
HashMap HSchucundebingdepai = new HashMap<>();
ArrayList yongALchucundeshuju = new ArrayList();
for (int i = 0; i < Stringchucundepai.length; i++) {
yongALchucundeshuju.add(Stringchucundepai[i]);
}
yongALchucundeshuju.add("大王");
yongALchucundeshuju.add("小王");
Random suijishu = new Random();
String fangzidawangxiaowangchongfu = null;
for (int k = 0; k < 100; k++) {
int zongpaishu = yongALchucundeshuju.size();
int yongRandomdedaodesuijishu1 = suijishu.nextInt(zongpaishu);
int yongRandomdedaodesuijishu2 = suijishu.nextInt(zongpaishu);
if (yongRandomdedaodesuijishu1 == yongRandomdedaodesuijishu2)
continue;
{
fangzidawangxiaowangchongfu = yongALchucundeshuju
.get(yongRandomdedaodesuijishu1);
yongALchucundeshuju.set(yongRandomdedaodesuijishu1,
yongALchucundeshuju.get(yongRandomdedaodesuijishu2));
yongALchucundeshuju.set(yongRandomdedaodesuijishu2,
fangzidawangxiaowangchongfu);
}
}
ArrayList yongALchucundejiadepai = new ArrayList();
ArrayList yongALchucundeyidedepai = new ArrayList();
ArrayList yongALchucundebingdepai = new ArrayList();
ArrayList yongALchucundedipai = new ArrayList();
for (int i = 0; i < yongALchucundeshuju.size(); i++) {
if (i >= yongALchucundeshuju.size() - 3) {
yongALchucundedipai.add(yongALchucundeshuju.get(i));
} else if (i % 3 == 0) {
yongALchucundejiadepai.add(yongALchucundeshuju.get(i));
} else if (i % 3 == 1) {
yongALchucundeyidedepai.add(yongALchucundeshuju.get(i));
} else if (i % 3 == 2) {
yongALchucundebingdepai.add(yongALchucundeshuju.get(i));
}
}
System.out.println("底牌:" + yongALchucundedipai);
System.out.println("甲被发到的牌:" + yongALchucundejiadepai);
System.out.println("乙被发到的牌:" + yongALchucundeyidedepai);
System.out.println("丙被发到的牌:" + yongALchucundebingdepai);
}
}