【问题标题】:Missing Return and Float should be Int缺少返回和浮点数应该是 Int
【发布时间】:2020-02-21 19:55:30
【问题描述】:

我有这样的代码块,我试图摆脱 Float 应该是 Int 和 Missing Return 错误。

   package com.bykd.dev;

        @:final class Version
        {

            public static inline var SPLIT_CHAR : String = ".";

            public static var revisionKeyword : String = "Revision"; 

            private var _tag : String;

            private var _numbers : Array<Dynamic>;

 public static function create(pfx : String, rev : String = null, sfx : String = null) : Version
    {
        var nums : Array<Dynamic> = null; 
        nums = pfx.split(SPLIT_CHAR);
        if (rev != null)
        {
            nums.push(trimRevision(rev));
        }
        return new Version(nums, sfx);
             private static function trimRevision(rev : String) : String
            {
                var beg : Float = Math.NaN;
                var end : Float = Math.NaN; 
                beg = Std.string("$" + revisionKeyword + ": ").length; 
                end = rev.lastIndexOf(" $");
                return rev.substring(beg, end);   
            } 
        }

错误在最后几行:

  end = rev.lastIndexOf(" $");
                return rev.substring(beg, end);  

任何帮助将不胜感激。

【问题讨论】:

    标签: haxe haxelib


    【解决方案1】:

    为什么要使用浮点数?

    var beg : Int = 0;
    var end : Int = 0;
    

    尽可能避免动态

    var nums : Array<String> = null; 
    nums = pfx.split(SPLIT_CHAR);
    

    【讨论】:

    • 原来这正是问题所在。
    • 非常感谢您提供如此准确的答案。我现在知道我在哪里做错了。
    猜你喜欢
    • 1970-01-01
    • 2019-05-14
    • 1970-01-01
    • 1970-01-01
    • 2020-07-08
    • 2022-11-02
    • 2016-11-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多