for 循环贯穿值

本文关键字:循环 for | 更新日期: 2023-09-27 18:36:13

我正在尝试运行一个 for 循环来运行值,但我不确定如何正确执行此操作。

        string[] GoogleID = { "ga:1381000", "ga:1860066"};
        // Loop with the foreach keyword.
        foreach (string value in GoogleID)
            {

            if (GoogleID.ToString() == "ga:1381000")
            {
                WebName = "Yes";
            }
            else
            {
                WebName = "No";
            }

            }

我做错了什么? 如何让它检查这两个值?

它说我的 GoogleID.ToString = String[] 的字符串

for 循环贯穿值

你会想这样做。

string[] GoogleID = { "ga:1381000", "ga:1860066"};
        // Loop with the foreach keyword.
        foreach (string value in GoogleID)
            {

            if (value  == "ga:1381000")
            {
                WebName = "Yes";
            }
            else
            {
                WebName = "No";
            }

            }

您可以使用 LINQ:

WebName = GoogleId.Any(s => s == "ga:1381000") ? "Yes" : "No";

另一个 LINQ 建议。

WebName = GoogleID.Contains("ga:1381000") ? "Yes" : "No"

应更正代码,如以下示例代码片段所示:

    string[] GoogleID = { "ga:1381000", "ga:1860066" };
    string WebName;
    // Loop with the foreach keyword.
    foreach (string _val in GoogleID)
    {
        WebName = (_val == "ga:1381000") ? "Yes" : "No";
    }

为了获得更好的性能,您可以使用以下代码片段:

    string[] GoogleID = { "ga:1381000", "ga:1860066" };
    string WebName;
    // Loop with the for keyword.
    for (int i = 0; i < GoogleID.Length; i++ )
    {
        WebName = (GoogleID[i] == "ga:1381000")? "Yes":"No";
    }

希望这可能会有所帮助。

您可以使用 for 循环,如下所示:-

 string[] GoogleID = { "ga:1381000", "ga:1860066" };
          //use for loop
          for (int i = 0; i < GoogleID.Length; i++)
         {
           if (GoogleID[i].ToString() == "ga:1381000")  //use index here 
            {
                WebName = "Yes";
            }
            else
            {
                WebName = "No";
            }
        }

var WebName = GoogleID.Contains("ga:1381000") ?"是" : "否"

每次通过循环时,它都会检查组中的第一个元素(GoogleID或GoogleID[0])。因此始终为真,并且始终打印"是"它应该检查"值"。 请参阅下面的细微更改。我将"值"更改为 X 以突出显示它。

字符串网站名称;

    string[] GoogleID = { "ga:1381000", "ga:1860066"};
    // Loop with the foreach keyword.
    foreach (var X in GoogleID)
        {
            if (X == "ga:1381000")
            {
                WebName = "Yes";
            }
            else
            {
                WebName = "No";
            }
        }

此处功能齐全的版本:https://dotnetfiddle.net/lihDeY