首页 > 解决方案 > 找到两组之间完全匹配的等效数

问题描述

我正在编写一个程序,其中我有一组数字 123456789 和单词 ABCDEFGHI。现在,如果用户输入任何数字,其等效字母应显示在结果中。有人可以指导我如何解决这个问题。

对于 EX:用户输入 1352 应导致 ACEB

标签: c#

解决方案


欢迎来到这里,您的问题太“容易”而无法成为问题。至少你应该展示你所做的事情。

但我会给你一个机会。

我写了简单的方法来解决你的问题。

沙盒在线运行

//Your code goes here
Console.WriteLine("Hello, world!");
//predifine your sets
var inputSet = new List<char> {'1','2','3','4','5','6','7','8','9','0'};
var outputSet = new List<char>{'A','B','C','D','E','F','G','H','I','J'};
//lets parse
Console.WriteLine(new string("1352".Select(x=>outputSet[inputSet.IndexOf(x)]).ToArray()));
Console.WriteLine(new string("199466856".Select(x=>outputSet[inputSet.IndexOf(x)]).ToArray()));
Console.WriteLine(new string("111222333444".Select(x=>outputSet[inputSet.IndexOf(x)]).ToArray()));

结果

Hello, world!

ACEB

AIIDFFHEF

AAABBBCCCDDD

编辑

解释它是如何工作的。

"1352".Select(x)在字符串中逐个选择字符并存储在x.

inputSet.IndexOf(x)找到xin 的位置inputSet

outputSet[int]从最近找到的位置获取给定位置的inputSet价值

new string(char array)通过给定的 char 数组实例化一个新字符串。


推荐阅读