@Override
	public boolean exec() {
		//解析
		this.doComm(this.line);
		//this.line = this.line.replaceAll(",", ""); //String 可能包含空格
		int p1 = this.line.indexOf(" ");
		int p2 = this.line.indexOf(",");
		if (p1 == -1 || p2 == -1 || p2>=this.line.length()) {
			this.out.append("exec var error. line:").append(this.line);
			this.mgr.err(this);
			log.error(this.out);
			return false;
		}
		String[] ws = new String[3];
		ws[0] = this.line.substring(0,p1);
		ws[1] = this.line.substring(p1+1,p2);
		ws[2] = this.line.substring(p2+2).trim();
		
		//生成Var
		v.setKey(ws[0]);
		boolean isString = ws[0].contains("string");
		boolean isClass = ws[0].contains("class");
		String type = (isString ? "String" : (isClass ? "Class" : "number"));
		v.setClassName(type);
		String vName = ws[1];
		v.setName(vName);
		String value = ws[2].trim();
		if (isString) {
			v.setValue(value);
		}else if(isClass){
			v.setValue(value);
		}else{
			//直接用修正后16进制数,因为无法实际区分float,double
			value = fixNum(ws[0], value);
			v.setValue(value);
		}
		
		//仅输出value
		v.setOut(value);
		
		//加入到SentenceMgr的Var集合,此时需要判断mgr中是否已存在及v的输出状态
		if (this.mgr.getVar(v.getName()) == null) {
//			v.setOutVar(false);
			this.mgr.setVar(v);
		}else{
			//此时很可能是赋值,变为可输出状态
			Var v1 = this.mgr.getVar(v.getName());
			
			
			//是否输出的判断
			boolean isSet = !ComputeSentence.isLocalVar(v1, this.mgr.isStatic());

			if(isSet){
				this.mgr.setVar(v);
			}else{
//				if (type.equals("int")) {
//					String right = null;
//					if (String.valueOf(value).equals("0")){
//						right = Var.checkIout(v1.getClassName(), "0") +" /* " + value +" */";
//					}else{
//						right = Var.checkIout(v1.getClassName(), value);
//					}
//					if (v1.getClassName().equals("int") && (!v1.getClassName().equals("int")) && StringUtil.isDigits(v1.getValue())) {
//						right = String.valueOf(value);
//					}
//					v.setOut(right);
//				}
				v.setOut(Var.varOut(v1.getClassName(), value));
				this.out.append(v1.getOut()).append(" = ").append(v.getOut());
				this.type = Sentence.TYPE_LINE;
				v1.setValue(v.getValue());
			}
		}
		this.over();
		return true;
	}