`
jiagou
  • 浏览: 2595378 次
文章分类
社区版块
存档分类
最新评论

java面试要点---ArrayList list = new ArrayList(); 在这个泛型为Integer的ArrayList中存放一个String类型的对象。

 
阅读更多
java面试要点---ArrayList list = new ArrayList(); 在这个泛型为Integer的ArrayList中存放一个String类型的对象。
ArrayListlist=newArrayList();在这个泛型为Integer的ArrayList中存放一个String类型的对象。
1.刚刚看到的时候,也是很纳闷后来仔细看了下,java的反射机制;
2.这个可以通过java的反射机制来实现;
3.下面是一个例子:
package com.credream.refelect;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.List;
public class TestFile {
public static void main(String[] args) throws Exception {
List<Integer> list = new ArrayList<Integer>(); //定义Integer泛型
String str = "abc";
Method[] method=list.getClass().getMethods();//取得list的所有方法
System.out.println(method.length);
for(int i=0;i<method.length;i++){
System.out.println(method[i]);//遍历打印list的方法
}
method[0].invoke(list, str);//通过反射来执行list的第一个方法,第一个是list对象,代表该对象的方法,第二个是方法参数
System.out.println(list.size());
for(int i=0;i<list.size();i++){
System.out.println(list.get(i));
}
}
}
------------------------------------------------------------------------------------------------------------------
运行结果:
35
public boolean java.util.ArrayList.add(java.lang.Object)
public void java.util.ArrayList.add(int,java.lang.Object)
public java.lang.Object java.util.ArrayList.get(int)
public java.lang.Object java.util.ArrayList.clone()
public int java.util.ArrayList.indexOf(java.lang.Object)
public void java.util.ArrayList.clear()
public boolean java.util.ArrayList.contains(java.lang.Object)
public boolean java.util.ArrayList.isEmpty()
public int java.util.ArrayList.lastIndexOf(java.lang.Object)
public boolean java.util.ArrayList.addAll(int,java.util.Collection)
public boolean java.util.ArrayList.addAll(java.util.Collection)
public int java.util.ArrayList.size()
public java.lang.Object[] java.util.ArrayList.toArray(java.lang.Object[])
public java.lang.Object[] java.util.ArrayList.toArray()
public boolean java.util.ArrayList.remove(java.lang.Object)
public java.lang.Object java.util.ArrayList.remove(int)
public java.lang.Object java.util.ArrayList.set(int,java.lang.Object)
public void java.util.ArrayList.ensureCapacity(int)
public void java.util.ArrayList.trimToSize()
public int java.util.AbstractList.hashCode()
public boolean java.util.AbstractList.equals(java.lang.Object)
public java.util.Iterator java.util.AbstractList.iterator()
public java.util.List java.util.AbstractList.subList(int,int)
public java.util.ListIterator java.util.AbstractList.listIterator(int)
public java.util.ListIterator java.util.AbstractList.listIterator()
public java.lang.String java.util.AbstractCollection.toString()
public boolean java.util.AbstractCollection.containsAll(java.util.Collection)
public boolean java.util.AbstractCollection.removeAll(java.util.Collection)
public boolean java.util.AbstractCollection.retainAll(java.util.Collection)
public final void java.lang.Object.wait() throws java.lang.InterruptedException
public final void java.lang.Object.wait(long,int) throws java.lang.InterruptedException
public final native void java.lang.Object.wait(long) throws java.lang.InterruptedException
public final native java.lang.Class java.lang.Object.getClass()
public final native void java.lang.Object.notify()
public final native void java.lang.Object.notifyAll()
1
abc
分享到:
评论

相关推荐

    使用对象ArrayList填充DataGrid,C#源代码ArrayList MyList = new ArrayList();

    在.NET框架中,C#是一种常用的编程语言,用于构建各种应用程序。...尽管ArrayList在现代C#编程中逐渐被泛型集合取代,但了解如何使用ArrayList与DataGrid配合仍然是一个实用的技能,特别是在处理遗留代码时。

    面试必须资料java泛型攻略、

    然而,在`inspectCollection`方法中,我们期望遍历的元素都是`String`类型,但实际上集合中还包含了一个`Integer`对象。因此,在运行时,当我们尝试将一个非`String`对象转换为`String`时,就会抛出`...

    Java Methods-java.util.ArrayList.ppt

    Java.util.ArrayList 是 Java 语言中一个非常重要的类,它实现了一个可以动态调整大小的数组列表。下面我们将详细讨论 ArrayList 类的构造方法、方法、特点和使用场景。 一、ArrayList 类的构造方法 ArrayList 类...

    JAVA-泛型课件-泛型课件

    泛型是Java语言的一个重要特性,首次出现在Java SE 1.5版本中。它的引入主要是为了解决在集合操作中类型安全性的问题,并通过引入参数化类型的概念,提高了代码的复用性与可读性。 ### 泛型概念 泛型,即参数化...

    很好的Java泛型的总结

    例如,定义一个List&lt;Integer&gt; intList = new ArrayList&lt;Integer&gt;(),那么在编译期就会检查该List只能添加Integer或int类型的数据,避免了其他类型的数据混入。 类型擦除 ---------- Java泛型在编译期之后就会把...

    java泛型学习ppt

    * 当声明或者实例化一个泛型的对象时,必须指定类型参数的值。 自定义简单泛型: * public class Gclass&lt;T&gt;{ private T a; public T getA() { return a; } public void setA(T a) { this.a = a; } } 泛型与继承:...

    跟我学Java-day14-ArrayList集合.pdf

    day14-ArrayList集合 1.ArrayList 1.1ArrayList类概述【理解】 ...ArrayList&lt;String&gt; array = new ArrayList&lt;String&gt;(); //添加元素 array.add("hello"); array.add("world"); array.add("java");

    关于java基础的泛型的练习

    Java泛型是Java SE 5.0引入的一个重要特性,它极大地增强了代码的类型安全性和可读性。泛型在编程中的应用广泛,特别是在集合框架中,使得我们可以在编译时就检查类型,避免了不必要的类型转换,并且提高了代码的...

    Java中的泛型

    当你创建`MyClass`的一个实例时,你可以指定`T`的具体类型,比如`MyClass&lt;String&gt;`或`MyClass&lt;Integer&gt;`等。 #### 泛型的优点 1. **类型安全**:泛型使得在编译阶段就能检测到类型错误,从而避免了运行时的...

    java泛型指南 经典

    Java 泛型的一个重要特性是类型擦除,这意味着在编译之后,所有的泛型信息都会被擦除。因此,在运行时,所有泛型类型看起来都像是它们的基础类型。例如,`List&lt;Integer&gt;` 和 `List&lt;String&gt;` 在运行时都表现为 `List`...

    C# Array和ArrayList,List区别

    `List&lt;T&gt;` 是一个泛型集合,位于 `System.Collections.Generic` 命名空间中,可以存储任何类型的对象,并且同样支持动态改变大小。创建一个 `List&lt;int&gt;` 的基本语法如下: ```csharp List&lt;int&gt; list = new List(); ...

    学士后Java集合框架和泛型课后习题答案

    例如,ArrayList中的E就是一个类型参数,代表某种具体的对象类型。泛型可以限制集合中元素的类型,防止不兼容类型的数据存入,提高编译时的类型检查。 5. **泛型通配符**:?通配符用于表示任意类型。例如,`List&lt;?&gt;...

    大学课程讲义-Java基础-泛型.docx

    当我们实例化一个泛型类或接口时,如`List&lt;Integer&gt;`,我们提供了一个实际的类型参数(在这里是`Integer`),这个参数将替换掉所有的类型参数`E`,确保所有的操作都与指定的类型兼容。 3. **泛型和子类继承** ...

    Java泛型使用详细分析.pdf

    在上面的示例代码中,我们使用泛型来定义一个 List 集合,指定其类型为 String。这样,在将元素添加到集合中时,编译器会检查类型安全,避免在运行时出现类型相关的错误。 三、在方法上使用泛型 除了在集合上使用...

    java泛型深入.pdf

    Java泛型是Java语言中用于处理类型安全的一种机制,它允许在编译期间提供类型检查,并在运行时消除了类型转换。Java泛型深入的内容涵盖泛型的基本概念、泛型类、接口、方法以及泛型的使用限制和高级特性。 首先,...

    实例讲解Java泛型编程的快速入门

    - 泛型方法是在方法声明中使用类型参数,如`public &lt;T&gt; T max(List&lt;T&gt; list)`,这个方法可以找到列表中的最大值,无论列表包含何种类型。 - 泛型方法的类型参数独立于类的类型参数,因此可以在非泛型类中定义泛型...

    java泛型的应用

    当我们实例化一个参数化类型的ArrayList,如`ArrayList&lt;String&gt;`,`String`就是实际类型参数,表示此ArrayList只能存储String类型的对象。这种类型参数化的ArrayList被称为参数化类型(Parameterized Type)。 在...

    SUN公司Java泛型编程文档

    例如,ArrayList是一个典型的泛型类,它可以被声明为ArrayList&lt;String&gt;或ArrayList&lt;Integer&gt;,确保了添加和检索的元素都是特定类型的。 在Java中,泛型主要有以下几方面: 1. **类型参数化**:泛型类、泛型接口和...

Global site tag (gtag.js) - Google Analytics