Java 具有对象的集合如何反应?

Java 具有对象的集合如何反应?,java,methods,collections,Java,Methods,Collections,我的程序包含一个对象,我想了解如果我不能使用这些方法,包含对象的集合如何帮助我 我使用的代码: ClassMain c = new ClassMain(); Map<String, ClassMain> s = new HashMap<>(); s.put("S", c); Iterator it = s.keySet().iterator(); while(it.hasNext()) { Object key = it.next(); System.o

我的程序包含一个对象,我想了解如果我不能使用这些方法,包含对象的集合如何帮助我

我使用的代码:

ClassMain c = new ClassMain();
Map<String, ClassMain> s = new HashMap<>();
s.put("S", c);
Iterator it = s.keySet().iterator();

while(it.hasNext())
{
    Object key = it.next();
    System.out.println(key);
}

迭代器是泛型类型。但你用它作为原始类型。因此,您将丢失它应该具有的类型信息

代码应为:

Iterator<String> it = s.keySet().iterator();

while (it.hasNext()) {
    String key = it.next();
    System.out.println(key);
}
这是一个,您不必使用它:

Iterator it = ... ;
返回可在此处使用的参数化
,以及返回其他类型集合的所有集合方法:

Iterator<String> = s.keySet().iterator();

集合用于存储和存储事物的集合。您可以拉出
贴图中的对象,如下所示:

ClassMain c = new ClassMain();
Map<String, ClassMain> s = new HashMap<String, ClassMain>();
s.put("S", c);

for (String key : s.keySet())
{
    ClassMain c = s.get(key);
    c.print();
}
ClassMain c=newclassmain();
Map s=新的HashMap();
s、 put(“s”,c);
对于(字符串键:s.keySet())
{
ClassMain c=s.get(键);
c、 打印();
}

您需要使用泛型。“如果我不能使用这些方法”??问题是什么?这不是一个问题。也许真相在无用的部分……不,这是一个复杂的问题。任何没有Oracle教程那么复杂的东西都不会触及表面。那里的信息都是相关的。也许你想问一些关于你不理解的部分的更具体的问题。
Iterator<String> = s.keySet().iterator();
while(it.hasNext())
{
    String key = it.next();
    System.out.println(key);
}
ClassMain c = new ClassMain();
Map<String, ClassMain> s = new HashMap<String, ClassMain>();
s.put("S", c);

for (String key : s.keySet())
{
    ClassMain c = s.get(key);
    c.print();
}