2017-02-23 7 views
1

내 데이터 구조 클래스에 대한 할당과 같은 계산기 일하고, 나는어떻게 일반 정의 된 배열 목록에 값을 입력 할 수 있습니까?

ArrayList<ScalarSymbol> scalar; 

로 정의 배열 목록에 입력 심볼에 있고 나는이 작업을 수행하여 그것으로 입력 값에 노력 해왔다 :

scalars.add(0,')'); 

그리고 문자 유형이 <ScalarSymbol> 배열의 올바른 구문이 아니라고 알려줍니다. 어떤 타입의 배열이 필요한지 알아내는 방법을 모르겠다. char를 받아 들일 수 있도록 bind를 사용해야 할까? 그런 다음

ScalarSymbol s = new ScalarSymbol(); 

를 목록에 추가 :

+0

이며, 0 (당신이'추가 믿고 무엇을 이끌 , ')')'당신이 원하는 것을 할 수 있을까요? ['ArrayList.add()'문서] (https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html#add-E-)는 정규 표준이어야합니다. ArrayList와 다른 일반 콜렉션과의 상호 작용을 다루는 [collections tutorial] (https://docs.oracle.com/javase/tutorial/collections/)와 함께 하나의 매개 변수 만 필요하다는 것을 알 수 있습니다. – dimo414

답변

1

그냥 추가 할 객체의 인스턴스를 생성

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;