Esempio n. 1
0
        /// <summary>
        /// 检测当前的32位整数是否处于指定的范围内
        /// </summary>
        /// <param name="number">要检测的32位整数对象</param>
        /// <param name="min">匹配范围的的起始值</param>
        /// <param name="max">匹配范围的的最大值</param>
        /// <param name="mode">指定匹配模式,默认为包含起始值和最大值</param>
        /// <returns>检测成功返回True,否则返回False</returns>
        public static bool Range(this int number, int min = int.MinValue, int max = int.MaxValue, NumberRangeMode mode = NumberRangeMode.AllEqual)
        {
            int rm = (int)mode;

            switch (rm)
            {
                case 0:
                    return number >= min && number <= max;
                case 1:
                    return number >= min && number < max;
                case 2:
                    return number > min && number <= max;
                case 3:
                    return number > min && number < max;
                default:
                    return false;
            }
        }
Esempio n. 2
0
        /// <summary>
        /// 检测当前的双精度浮点数是否处于指定的范围内
        /// </summary>
        /// <param name="number">要检测的双精度浮点数对象</param>
        /// <param name="min">匹配范围的的起始值</param>
        /// <param name="max">匹配范围的的最大值</param>
        /// <param name="mode">指定匹配模式,默认为包含起始值和最大值</param>
        /// <returns>检测成功返回True,否则返回False</returns>
        public static bool Range(this double number, double min = double.MinValue, double max = double.MaxValue, NumberRangeMode mode = NumberRangeMode.AllEqual)
        {
            int rm = (int)mode;

            switch (rm)
            {
            case 0:
                return(number >= min && number <= max);

            case 1:
                return(number >= min && number < max);

            case 2:
                return(number > min && number <= max);

            case 3:
                return(number > min && number < max);

            default:
                return(false);
            }
        }