表达式的化简
来源:互联网 发布:软件编程培训机构 编辑:程序博客网 时间:2024/05/23 01:57
package util;import java.io.FileInputStream;import java.io.IOException;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.Properties;public class Test {public static void main(String[] args) throws IOException {Properties props = new OrderedProperties();FileInputStream fileInputStream = new FileInputStream("input.properties");props.load(fileInputStream);// 用于存储所有节点:结束节点为GX=即:将值使用等号分割后length=1Map<String, String> map = new HashMap<String, String>();for (Object key : props.keySet()) {map.put(key.toString(), props.getProperty(key.toString()));}for (Object key : props.keySet()) {if (props.getProperty(key.toString()).split("=").length > 1) {String newstr = th(map, props.getProperty(key.toString()).split("=")[1]);System.out.println(newstr);}}}public static String th(Map<String, String> map, String dd) {String[] arrayStr = dd.split("\\+|\\(|\\)|\\*|/|\\-");// 去除数组中为空的字符串List<String> tmp = new ArrayList<String>();for (String str : arrayStr) {if (str != null && str.startsWith("G")) {tmp.add(str);}}arrayStr = tmp.toArray(new String[0]);for (String str : arrayStr) {String newstr = str;if (map.get(newstr).split("=").length > 1) {dd = dd.replaceAll(newstr, "(" + map.get(newstr).split("=")[1] + ")");dd = th(map, dd);}}return dd;}}package util;import java.util.Collections;import java.util.Enumeration;import java.util.LinkedHashSet;import java.util.Properties;import java.util.Set;public class OrderedProperties extends Properties {/** * */private static final longserialVersionUID= 1L;private final LinkedHashSet<Object>keys= new LinkedHashSet<Object>();public Enumeration<Object> keys() {return Collections.<Object> enumeration(keys);}public Object put(Object key, Object value) {keys.add(key);return super.put(key, value);}public Set<Object> keySet() {return keys;}public Set<String> stringPropertyNames() {Set<String> set = new LinkedHashSet<String>();for (Object key : this.keys) {set.add((String) key);}return set;}}G1:G1=G2:G2=G3:G3=G4:G4=G5:G5=G1+G3G6:G6=G4+G5*G5-G4G7:G7=G2+G6G8:G8=G7+G3G9:G9=G5+G8G10:G10=G9+G8-G7
阅读全文
0 0
- 表达式的化简
- Matlab中指数函数表达式的化简
- 表达式的后缀表达式
- Matlab化简符号表达式
- 规则表达式的常用表达式
- 常见算法笔试题的研究2(一元多项表达式的化简)
- 正则表达式,简单的常用的表达式。
- 表达式的类型和表达式的值
- 中缀表达式转为后缀表达式以及后缀表达式的计算
- 中缀表达式转后缀表达式 (中缀表达式的计算)
- 中缀表达式变为后缀表达式,以及后缀表达式的计算
- 中缀表达式转后缀表达式及后缀表达式的计算
- 数组表达式&函数表达式&函数指针表达式的二义性
- 中缀表达式;前缀表达式;后缀表达式;之间的转化
- struts标签,ognl表达式,el表达式,jstl表达式的区别
- 中缀表达式转后缀表达式_求表达式的值
- [整合]中缀表达式、前缀表达式、后缀表达式的相互转换
- 中缀表达式转换为后缀表达式&后缀表达式的计算
- 智能指针好用
- MySql从一窍不通到入门(九)Sharding的实现和规避
- Webpack
- easyUI下拉框控件easyui-combobox使用后台json文件填充数据失败的问题
- socket 网络编程
- 表达式的化简
- Less
- 交叉开发
- [NA]Lab5:反幂法求矩阵特征根
- JZ2440 第13章 LCD控制器(1)
- Vue
- 二维数组的遍历并按标准格式输出
- VMWare与Centos7.0无法共享文件夹的问题总结
- 欢迎使用CSDN-markdown编辑器