public  void pickupSymbols()
	{
		//申请空间
		statusSymbols = new SymbolBean[statusCount] ;
		eventSymbols = new SymbolBean[eventCount];
		
		
		int sc =0,ec=0,nsc=0,esc=0;
		for (Iterator iterator = symbols.iterator(); iterator.hasNext();) {
			SymbolBean sb = (SymbolBean) iterator.next();
			
			if(sb.getType().equals(SymbolType.EVENT)) eventSymbols[ec++]=sb;
			if(sb.getType().equals(SymbolType.STATUS)) {
				statusSymbols[sc++]=sb;
				switch (sb.getStatus()) {

					
				case NONTERMINAL:
					nonterminalStatusCount++;							
					break;
				case TERMINAL:
					endStatusCount++;					
					break;	
				}
			}			
		}
		
		nonterminalSymbols = new SymbolBean[nonterminalStatusCount];	
		endStatusSymbols = new SymbolBean[endStatusCount];
		
		//第二次从 状态符号中获取各类型状态。
		for (int i = 0; i < statusSymbols.length; i++) {
			switch (statusSymbols[i].getStatus()) {
			case START:
				startSymbol = statusSymbols[i];
				break;				
			case NONTERMINAL:
				nonterminalSymbols[nsc++]=statusSymbols[i];				
				break;
			case TERMINAL:
				endStatusSymbols[esc++]=statusSymbols[i];
				break;	
			}			
		}
	}