我有一个在后台运行的计时器,在我要显示排行榜的级别结束时.我想拿这个计时器并将其转换为00:00格式00(分钟):00(秒)(即01:40).怎么可能?我只需要在等级结束时进行计算和转换.
这就是我现在拥有的.我正常启动计时器
void Update()
{
if(timerIsRunning)
{
mainGameTimer += Time.deltaTime;
}
}
Run Code Online (Sandbox Code Playgroud)
现在要以00:00格式添加计时器,我需要将其作为float传递,但在排行榜中将其作为字符串读取
public void ShowResult()
{
int min = Mathf.FloorToInt(mainGameTimer / 60);
int sec = Mathf.FloorToInt(mainGameTimer % 60);
users.Add(new User(userName, score , timeScore));
users.Sort(delegate (User us1, User us2)
{ return us2.GetScore().CompareTo(us1.GetScore()); });
int max = users.Count <= 10 ? users.Count : 10;
for (int i = 0; i < max; i++)
{
//leaderListName[i].text = users[i].GetName() + "- " + users[i].GetScore() + "-" + Mathf.RoundToInt(users[i].GetTimeScore()) + "Sec";
leaderListName[i].text = users[i].GetName(); …Run Code Online (Sandbox Code Playgroud) 我正在计算我的字符串中有多少*符号.但我得到一个错误.
System.dll中出现未处理的"System.ArgumentException"类型异常
我只是使用正则表达式匹配来检查它.当我用任何其他字符串进行测试时,它工作得很好,但是当我搜索"*"时,它是一个例外.
这是给出表达式的代码
string abc = "i am just trying *** for a sample code";
var count = Regex.Matches(abc, "*").Count;
Console.Out.WriteLine(count);
Run Code Online (Sandbox Code Playgroud)
这一个很完美
string abc = "i am just trying for a sample code";
var count = Regex.Matches(abc, "a").Count;
Console.Out.WriteLine(count);
Run Code Online (Sandbox Code Playgroud)
任何想法为什么?