javaArray 学习笔记

泛型
class Pair<T>{
private T first;
private T second;
public Pair(){first=null;second=null;}
public Pair(T first,T second){this.first=first;this.second=second;}
public T getFirst(){return first;}
public T getSecond(){return second;}
}
public static void main(String[] args){
Pair<String> pair=new Pair<String>("hello","java");
System.out.println(pair.getFirst());
System.out.println(pair.getSecond());
}
通配类型 通配符?
class Stats<T extends Number>{
T []nums;
Stats(T [] obj){
nums=obj;
}
double average(){
double sum=0.0;
for(int i=0;i<nums.length;++i){sum+=nums[i].doubleValue();
}
return sum/nums.length;
}
void doSomething(Stats<?> ob){System.out.println(ob.getClass().getName());}
}
public static void main(String[] args){
Integer integer[]={1,2,3,4,5};
Stats<Integer> obgi=new Stats<Integer>(integer);
Double dnums[]={1.1,2.2,3.3,4.4,5.5};
Stats<Double> dobj=new Stats<Double>(dnums);
dobj.doSomething(obgi);
}


动态的创建将要作为参数传递的数组假设有(hide()方法):
hide(new Weeble[]{new Weeble(),new Weeble()})
集合框架:Collection 和 map接口
区别在于Collection每个位置只能保存一个元素,list ArrayList set HashSet
 map保存的是   [键对值]      HashMap
 要对自己定义的类进行排序,则应该在定义类的时候实现Comparable接口,并实现compareTo()方法:
 定义:public interface Comparable<T>{
public int compareTo(T obj);
 }
 map里面用Object.get(key)来获取键值对应的元素;
 Map<String, String> all=new HashMap<String,String>();
all.put("GFH", "高方红");
all.put("MB", "马彪");
all.put("GD", "李狗蛋");
all.put("XZH", "夏志恒");
String value=all.get("MB");
System.out.println(value);
System.out.println(all.get("GFH"));
System.out.println(all);
 HashMap里的key都是无序的,TreeMap里的元素按key排序key本身也是对象,所以key对象所在的类也必须实现Comparable接口。
 用法和HashMap一样。
 
 迭代器:
 Iterator
 List<String> list=new ArrayList<String>();
list.add("hello");
list.add("Java");
list.add("!");
Iterator<String> iterator=list.iterator();
while(iterator.hasNext())
{
String string=iterator.next();
System.out.println(string+".");
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值