日期:2014-05-20  浏览次数:20714 次

java新手提问:如何利用泛型实现一个一维数组操作类,可加入任意类型的数据。
看《java开发实战经典》这本书,泛型那章的习题:
按照要求定义一个操作类:要求完成一个一维数组操作类,其中可以加入任意类型的数据,数组具体的操作类型由程序外部决定,并且可以实现查询功能。

刚开始学编程,有点头大,哪位能指点指点,多谢多谢!

------解决方案--------------------
泛型里面写Object类不就可以了

------解决方案--------------------
参数或者类属性使用object,然后外部使用强制转换?
------解决方案--------------------
Object数组,然后根据枚举,判断存储的类型进行强转。
------解决方案--------------------
定义一个参数类型不就行了。
------解决方案--------------------
不会,帮顶。

关注.
------解决方案--------------------

public <T> List<T> arrayOperation(String param)
    {
        List<T> arr = new ArrayList<T>();
        .......
    }

方法加泛型,调用时指定泛型类型,如
List<Integer> arr = xxClass.arrayOperation("xxxx");
List<String> arr = xxClass.arrayOperation("xxxx");
------解决方案--------------------
看看ArrayList的源码
------解决方案--------------------
仅供参考:


public class TestArray<T> //define a class generic
{
private T[] arrayT1;

public TestArray()
{
arrayT1 = null;
}
public TestArray(T[] arrayT1)
{
this.arrayT1 = arrayT1;
}
public T[] getFirst()
{
return arrayT1;
}
public void setFirst(T[] newValue1)
{
this.arrayT1=newValue1;
}
//数组长度。
public int size(){
if(null == arrayT1){//数组未定义,返回负值。
return -1;
}
return arrayT1.length;
}

//取出数组给定下标的值。
public T getT_fromArrayT1(int k){
if(null == arrayT1 
------解决方案--------------------