黑马程序员技术交流社区

标题: 怎么得到这个数组的下标? [打印本页]

作者: 小周学诚    时间: 2013-7-26 21:42
标题: 怎么得到这个数组的下标?
有一个数组
{"a","b","c","d".............}
如何根据提供的值 得到其下标? 用什么函数?

作者: 王云峰    时间: 2013-7-26 22:14
string[] strArray = { "a","b","c", "d", "e" };
            string input = Console.ReadLine();
            for (int i = 0; i < strArray.Length; i++)
            {
                if (strArray == input)
                {
                    Console.WriteLine("{0}的下标是{1}", input, i);
                }
            }
            Console.ReadKey();
遍历数组时判断是否跟提供的值相等,是的话输出下标。
作者: 王云峰    时间: 2013-7-26 22:21
上面的IF语句,strArry【I】,  自动变成斜体了,你注意一下。
作者: 王云峰    时间: 2013-7-26 22:23
string[] strArray = { "a","b","c", "d", "e" };
             string input = Console.ReadLine();
             for (int i = 0; i < strArray.Length; i++)
             {
                 if (strArray【I】 == input)
                 {
                     Console.WriteLine("{0}的下标是{1}", input, i);
                 }
             }
             Console.ReadKey();
红色部分换成半角符号和小写i,  ....打不出来,会变成斜体  - -
作者: 黑骏马    时间: 2013-7-27 01:06
{:soso_e113:}借用下王同学的代码:
  1.              string[] strArray = { "a","b","c", "d", "e" };
  2.              Console.WriteLine("输入abcde中任一字母得到其在数组中的下标(回车键确认输入)");
  3.              string input = Console.ReadLine();
  4.              for (int i = 0; i < strArray.Length; i++)
  5.              {
  6.                  if (strArray[i] == input)
  7.                  {
  8.                      Console.WriteLine("{0}的下标是{1}", input, i);
  9.                  }
  10.              }
  11.              Console.ReadKey();
复制代码

作者: zhangcheng5468    时间: 2013-7-27 08:52
楼主问题解决后及时修改为已解决~
作者: xt654005440    时间: 2013-7-27 10:36
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;
namespace ifelse
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] strArray = { "a", "b", "c", "d", "e" };
            Console.WriteLine("已知数组中的元素如下: \n");
            //使用foreach语句遍历数组
            foreach (string str in strArray)
            {
                Console.Write(str+" ");
            }
            //声明集合list并初始化
            ArrayList list = new ArrayList(strArray);
            Console.WriteLine("请输入你想要查找的元素:");
            //调用indexof函数输出元素索引位置
            Console.WriteLine("你所查找的元素位置为:"+list.IndexOf(Console.ReadLine()));
            

            Console.ReadKey();

        }
    }
}
这里面我用的是调用集合的indexof方法,楼主可以试试。
作者: 小天    时间: 2013-7-27 13:58
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication18
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] str = {"a","b","c","d"};
            string str1="";
            for (int i = 0; i < str.Length; i++)
            {
               str1=str1+str[i];
            }
            Console.WriteLine("数组中包含的元素:{0}",str1);
                Console.WriteLine("请输入要查找的字符:");
            string result = Console.ReadLine();
            int m = 0;
            bool flag = false;
            foreach(string input in str)
            {
                if (result == input)
                {
                    Console.WriteLine("下标位置:"+m);
                    flag = true;
                }
                m++;
            }
            if (flag == false)
            {
                Console.WriteLine("查找失败,程序结束");
            }
            Console.ReadKey();
        }
    }
}

作者: 王云峰    时间: 2013-7-27 20:38
黑骏马 发表于 2013-7-27 01:06
借用下王同学的代码:

交交我怎么打你这种代码,我直接沾代码,下面都变成斜体了:'(
作者: 黑骏马    时间: 2013-7-27 21:32
王云峰 发表于 2013-7-27 20:38
交交我怎么打你这种代码,我直接沾代码,下面都变成斜体了

点编辑器上的<>图标,把代码复制进去就好了{:soso_e112:}





作者: 王云峰    时间: 2013-7-27 21:35
黑骏马 发表于 2013-7-27 21:32
点编辑器上的图标,把代码复制进去就好了

喔喔,谢谢,知道了。  




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2