You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity中C#多维数组按列区分统计TIE值的问题

解决Unity C#多维数组中各列Player/Banker的TIE统计问题

首先得指出你原来统计逻辑里的关键错误:你写的result.Equals("T") && result.Equals("P")永远不可能成立——一个字符串怎么可能同时等于"T"和"P"呢?这就是你的统计完全无效的核心原因。

结合你描述的场景(Player蓝色列、Banker红色列的TIE统计需求),我理解你的需求是:每一列属于Player或Banker序列(比如列的起始元素是P/B),需要统计每列内的T数量,再分别汇总所有Player列和Banker列的T总数。下面是具体的实现方案:

正确的统计实现代码

我们可以通过遍历数组的每一列,先确定列的归属(P/B),再统计该列内的T数量:

// 定义总计数器,分别统计Player和Banker列的TIE总数
int totalPlayerTies = 0;
int totalBankerTies = 0;

// 获取数组的列数和行数
int columnCount = table.GetLength(1);
int rowCount = table.GetLength(0);

// 遍历每一列
for (int col = 0; col < columnCount; col++)
{
    string columnCategory = null; // 标记当前列是P还是B
    int tieCountInCurrentCol = 0; // 当前列的T数量

    // 遍历当前列的每一行
    for (int row = 0; row < rowCount; row++)
    {
        string cellValue = table[row, col];
        // 跳过空单元格,避免干扰统计
        if (string.IsNullOrEmpty(cellValue))
            continue;

        if (cellValue == "T")
        {
            // 遇到T,累加当前列的T计数
            tieCountInCurrentCol++;
        }
        else if (columnCategory == null)
        {
            // 还没确定列归属,且当前单元格不是T,标记列的类型
            columnCategory = cellValue;
        }
    }

    // 根据列归属,把当前列的T数量累加到总计数器
    if (columnCategory == "P")
    {
        totalPlayerTies += tieCountInCurrentCol;
        Debug.Log($"第{col+1}列(Player列)的TIE数量:{tieCountInCurrentCol}");
    }
    else if (columnCategory == "B")
    {
        totalBankerTies += tieCountInCurrentCol;
        Debug.Log($"第{col+1}列(Banker列)的TIE数量:{tieCountInCurrentCol}");
    }
}

// 输出最终汇总结果
Debug.Log($"所有Player列的TIE总数:{totalPlayerTies}");
Debug.Log($"所有Banker列的TIE总数:{totalBankerTies}");

代码说明

  1. 修正核心逻辑:不再试图让一个值同时等于T和P/B,而是把T归属于它所在的列,先确定列的类型,再统计列内的T数量。
  2. 列归属判断:这里默认取列中第一个非T的有效元素作为列的类型(P/B),如果你的列归属规则不同(比如列的第一个元素必然是P/B),可以直接修改columnCategory的赋值逻辑,比如改成columnCategory = table[0, col];。
  3. 空单元格处理:跳过空字符串的单元格,避免因为数组未填满而导致统计错误。

针对你原数组填充代码的小建议

你原有的数组填充逻辑有点复杂,容易出错。如果可能的话,可以考虑把填充逻辑拆分成更小的函数,比如单独处理字符串分割、单独处理行/列的赋值,这样后续维护和排查问题会更方便。

内容的提问来源于stack exchange,提问作者Ginxxx

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 07:30:08