【问题标题】:Adding two Integers to array index without summing them将两个整数添加到数组索引而不求和它们
【发布时间】:2011-03-14 06:27:11
【问题描述】:

我是 C# 的初学者, 我正在尝试这样做.....用户输入“43 24”,应用程序接受此输入,将 43 放入 arr1[0] ,将 24 放入 arr1[1] 。 arr1 是 char[] 类型.. 我试过这个:(当然这只是代码的一部分)(wholeLine 是字符串类型)

foreach (char ch in wholeLine)
      {
          if (ch != ' ')
              {                     
                 arr1[0]  += ch ;                     
              }
      }

arr[0] 的输出是:g

我试图将 arr1 设为 int[] 类型并这样做了:

foreach (char ch in wholeLine)
      {
          if (ch != ' ')
              {
                 int z = Convert.ToInt32(ch.ToString());
                 arr1[0]  += z ;                     
              }
      }

但输出是:7

我只想让 arr[0] 包含43,我认为这是一个转换问题,但我不知道该怎么做,所以请帮忙:)

提前致谢。

【问题讨论】:

    标签: c# integer char


    【解决方案1】:

    您可以使用字符串数组。如果你在你的字符串上调用.Split,它会返回一个字符串数组:

    string words = "This is a list of words, with: a bit of punctuation" +
                       "\tand a tab character.";
    
    string [] split = words.Split(new Char [] {' ', ',', '.', ':', '\t' });
    
    foreach (string s in split) {
    
        if (s.Trim() != "")
            Console.WriteLine(s);
    }
    

    【讨论】:

      【解决方案2】:

      您可以使用 wholeLine.Split(" ") 来拆分您的字符串并从中生成 string[] 数组。

      【讨论】:

      • 采用单个字符串而不是数组(字符串或字符)的 Split(...) 在哪里?不是一个计划——我提出了同样的建议,并在不久之后编辑了我的评论。真的应该有一个很好的老式普通 Split(string delim)!
      • 我因为键盘打错了,反正我不在乎。无论如何,我的答案是错误的,即使它是第一个。
      【解决方案3】:

      试试string[] arr1 = wholeLine.Split(new char[] {' '});

      【讨论】:

        猜你喜欢
        • 2015-05-06
        • 1970-01-01
        • 2017-12-19
        • 2016-08-18
        • 1970-01-01
        • 2013-01-07
        相关资源
        最近更新 更多