<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                ### 一個需求 * 假設我們需要檢查許多的數字是否符合某一范圍 * 范圍存儲在外部系統中,并且可能隨時更改 * 數字范圍像這樣存儲著”>= 3,< 7” 一個java版本 ~~~ List<String> params = new LinkedList<>(); List<Integer> nums = new LinkedList<>(); List<String> marks = new LinkedList<>(); public JavaRangeMatcher(List<String> params) { this.params = params; for (String param : params) { String[] markNum = param.split(" "); marks.add(markNum[0]); nums.add(Integer.parseInt(markNum[1])); } } public boolean check(int input) { for (int i = 0; i < marks.size(); i++) { int num = nums.get(i); String mark = marks.get(i); if (mark.equals(">") && input <= num) return false; if (mark.equals(">=") && input < num) return false; if (mark.equals("<") && input >= num) return false; if (mark.equals("<=") && input > num) return false; } return true; } List<String> paramsList = new LinkedList<String>() {{ add(“>= 3”); add(“< 7”); }}; JavaRangeMatcher matcher = new JavaRangeMatcher(paramsList); int[] inputs = new int[]{1, 3, 5, 7, 9}; for (int input : inputs) { System.out.println(matcher.check(input)); } //給自己有限的時間,想想又沒有性能優化的余地 //我們一起來跑跑看 ~~~ 一個 scala 版本 ~~~ def exprToInt(expr: String): Int => Boolean = { val Array(mark, num, _*) = expr.split(" ") val numInt = num.toInt mark match { case "<" => numInt.> case ">" => numInt.< case ">=" => numInt.<= case "<=" => numInt.>= } //返回函數的函數 } case class RangeMatcher(range: Seq[String]) { val rangeFunc: Seq[(Int) => Boolean] = range.map(exprToInt) def check(input: Int) = rangeFunc.forall(_(input)) } def main(args: Array[String]) { val requirements = Seq(">= 3", "< 7") val rangeMatcher = RangeMatcher(requirements) val results = Seq(1, 3, 5, 7, 9).map(rangeMatcher.check) println(results.mkString(",")) //false,true,true,false,false } ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看