2017-02-23 23 views
1

我的工作就像分配给我的数据结构类计算器,我必须输入符号到定义为如何将值输入到通用定义的数组列表中?

ArrayList<ScalarSymbol> scalar; 

数组列表,我一直在试图输入值由这样进去:

scalars.add(0,')'); 

它告诉我字符类型不是<ScalarSymbol>数组的正确语法。我不知道如何找出数组的类型,为了让它接受字符,我必须使用绑定吗?

+0

我很好奇,是什么让你认为'加(0 ,')')'会做你想要的吗? ['ArrayList.add()'文档](https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html#add-E-)应该是您的规范引用(和你可以看到它只有一个参数),以及[collections collections](https://docs.oracle.com/javase/tutorial/collections/),它涵盖了与'ArrayList'和其他通用集合交互的内容。 – dimo414

回答

1

只需创建要添加对象的实例:

ScalarSymbol s = new ScalarSymbol(); 

然后将其添加到列表:

scalar.add(s); 

数组列表只需要写在这些类型:

<type> 
0

你应该这样做,

String symbols = "()[]+-*/"; // you can have your own symbols in a string or some way other 

for (int i = 0; i < symbols.length();i++) { 

    // provided you have a constructor like public ScalarSymbol(char c) or do 
    // accordingly as your ScalarSymbol class supports creating object using char 

    scalars.add(new ScalarSymbol(symbols.charAt(i))); 
} 

的一点是,你不能在当你已经将它定义为通过写作对象ScalarSymbol ArrayList中增加一个字符,

ArrayList<ScalarSymbol> scalar; 
相关问题