|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
|
|
|
|
|
namespace Myshipping.Core
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 扩展Int32功能
|
|
|
|
|
/// </summary>
|
|
|
|
|
public static class Int32Extensions
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 向上整除
|
|
|
|
|
/// 1.当num能被divideBy整除时,结果即为num/divideBy;
|
|
|
|
|
/// 2.当num不能被divideBy整除时,结果为num/divideBy + 1;
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="num">被除数,大于或者等于0</param>
|
|
|
|
|
/// <param name="divideBy">除数,大于0</param>
|
|
|
|
|
/// <returns>向上整除结果</returns>
|
|
|
|
|
public static int CeilingDivide(this int num, int divideBy)
|
|
|
|
|
{
|
|
|
|
|
if (num < 0 || divideBy <= 0)
|
|
|
|
|
{
|
|
|
|
|
return 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return (num + divideBy - 1) / divideBy;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 向上整除
|
|
|
|
|
/// 1.当num能被divideBy整除时,结果即为num/divideBy;
|
|
|
|
|
/// 2.当num不能被divideBy整除时,结果为num/divideBy + 1;
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="num">被除数,大于或者等于0</param>
|
|
|
|
|
/// <param name="divideBy">除数,大于0</param>
|
|
|
|
|
/// <returns>向上整除结果</returns>
|
|
|
|
|
public static long CeilingDivide(this long num, long divideBy)
|
|
|
|
|
{
|
|
|
|
|
if (num < 0 || divideBy <= 0)
|
|
|
|
|
{
|
|
|
|
|
return 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return (num + divideBy - 1) / divideBy;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 将List<int> 转为间隔字符串
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="strlist"></param>
|
|
|
|
|
public static string ListToString(this List<int> strlist, char Split = ',')
|
|
|
|
|
{
|
|
|
|
|
StringBuilder str = new StringBuilder();
|
|
|
|
|
foreach (var item in strlist)
|
|
|
|
|
{
|
|
|
|
|
str.Append(item.ToString() + Split);
|
|
|
|
|
}
|
|
|
|
|
return str.ToString();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 拓展 将字符串抓换为int
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="str"></param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
public static int StrToInt(this string str)
|
|
|
|
|
{
|
|
|
|
|
if (str.Isint())
|
|
|
|
|
{ return Convert.ToInt32(str); }
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
return 0;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 拓展 将字符串数组转换成int 数组
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="str"></param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
public static int[] strToIntArray(this string[] str)
|
|
|
|
|
{
|
|
|
|
|
return Array.ConvertAll(str, new Converter<string, int>(StrToInt));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|