Collection接口中的常用方法:
Collection是接口,Collection下有很多子类,
public static void main(String[] args) { // TODO Auto-generated method stub //遍历数组 // int[] nums = {1,2,3,4,5}; // for(int num:nums){ // System.out.println(num); // } Collection nums = new ArrayList(); nums.add(10); nums.add(20); nums.add(30); nums.add(40); //1.用迭代器 //2.增强for循环 for(Integer i:nums){ nums.add(50); System.out.println(i); } //快捷键 foreach+alt+/
以ArrayList泛型,泛型中的含义
public class GenericDemo02 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//3.泛型接口
// MyClass2 mc2 = new MyClass2(); // mc2.show(“abc”); MyClass2 mc3 = new MyClass2(); mc3.show(12); } //求两个整数的和,求两个float类的数的和,求两个double类型数的和 public static T sum(T num1,T num2){ //return num1+num2; return num1; }
// public static float sum(float num1,float num2){ // return num1+num2; // }
/*
* 泛型方法的使用
*/
public static void demo02(){
//创建一个Person
Person<String> p = new Person<String>();
p.show(123);//传递123 那么这泛型T就是 Integer
p.show("123");//传递"123",那么这个泛型T就是String类型
}
/*
* 泛型类的使用
*/
public static void demo01(){
//1.泛型在类上
//Person p = new Person();
// p.setName(123);//因为参数定死就是String类型 // Person p = new Person(); // p.setName(“张三”); // String name = p.getName(); Person p2 = new Person(); p2.setName(123); Integer i = p2.getName(); }
}
public class Person {//称为这个类是泛型类 E name;
public E getName() {
return name;
}
public void setName(E name) {//使用的类的泛型的方法
this.name = name;
}
public <T> T show(T e){//泛型方法
//System.out.println(e);
return e;
}
}
*/
*/ public class DouDiZhuDemo { public static void main(String[] args) { //1.创建一副牌,保存到集合中 ArrayList cards = new ArrayList(); //添加牌 一张牌 数值+花色 String[] nums = {“A”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”,“10”,“J”,“Q”,“K”}; String[] colors = {“♠”,“♥”,“♣”,“♦”}; //拼接 花色+num for (String num : nums) { for (String color : colors) { String card = color+num; cards.add(card); } } cards.add(“大S”); cards.add(“小S”); //2.洗牌 java提供了一个方法 Collections.shuffle(集合); Collections.shuffle(cards);//打乱集合中元素的顺序 //3.发牌 //定义三个集合 ArrayList p1 = new ArrayList(); ArrayList p2 = new ArrayList(); ArrayList p3 = new ArrayList(); //定义地主牌的集合 ArrayList dp = new ArrayList(); //遍历54张牌 for (int i = 0; i < cards.size(); i++) { String card = cards.get(i); //如果是最后三张,不发,保存到地主牌的集合中 //i 53 52 51 if(i>=51){ //不发 dp.add(card);
}else{
//0 p1 1 p2 2 p3 3 p1
if(i%3==0){
//给p1发牌
p1.add(card);
}else if(i%3==1){
p2.add(card);
}else{
p3.add(card);
}
}
}
//4.展示牌(打印所有的牌)//
//调用方法
lookCard(p1);
lookCard(p2);
lookCard(p3);
lookCard(dp);
}
//看牌方法
public static void lookCard(ArrayList<String> cards){
for (String card : cards) {
System.out.print(card+" ");
}
System.out.println();
}
}