<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          expression-analyzerjava 公式解析 表達(dá)式解析

          聯(lián)合創(chuàng)作 · 2023-09-28 19:46

          基于有限自動機(jī)和LL(1)分析法實(shí)現(xiàn)的公式解析器,使用java語言開發(fā),具備以下功能:

          1)         實(shí)現(xiàn)了算術(shù)和邏輯表達(dá)式的解析,可使用單條或多條語句,表達(dá)式中可使用注釋; 

          2)         支持多種數(shù)據(jù)類型,包括數(shù)值、布爾、字符串和日期; 

          3)         支持變量定義,表達(dá)式解析前和解析后能夠設(shè)置和取得變量的值;

          4)         支持函數(shù)運(yùn)算,除默認(rèn)的系統(tǒng)函數(shù)外,用戶可使用自定義函數(shù);

          5)         實(shí)現(xiàn)了對if-else分支結(jié)構(gòu)的解析;

          6)         能夠?qū)φZ句中出現(xiàn)的詞法錯誤和語法錯誤給出提示并定位。

          簡單使用示例,具體參見downloads中的文檔:

          Expression expression = new Expression("a +1;");//創(chuàng)建表達(dá)式

          expression.initVariable("a", 1);//設(shè)置變量值

          Valuable result = expression.reParseAndEvaluate(); //執(zhí)行,返回結(jié)果

          取得數(shù)值結(jié)果可調(diào)用:

          result.getNumberValue(),返回BigDecimal,結(jié)果為2



           

          瀏覽 26
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  免费无码高清 | 国产乱来╳╳A片视频 | 99热这里只有精品99 | 亚洲成A人片777777久久 | 小泽玛利亚黑人喷水 |