添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

前言:
在游戏中,关于在列表中 查找某行数据时,需要通过关键字匹配,去遍历表中的数据,如果表中匹配到关键字,则返回该行数据,没有则返回null。比如查找在好友列表查找某个好友时。

建立一个 data 数据:用于保存item 的所有信息 (如: id,title,content,icon 等)

public class Data{
  public int id;
  public string name;
  public string title;
  public string content;
  public string icon;
private List<Data> onFindKeyWord(string str, List<Data> list){
List<Data> m_list= new List<Data>();
int count = list.Count;
 for(int i=0; i<count; i++){
  Data data = list[i];
  if(data.name.Indexof(str) != -1)
    m_list.Add(data);
 return m_list; // 返回新的列表,符合模糊查询的结果列表

用foreach 遍历, 通过name模糊查找

private List<Data> onFindKeyWord(string str, List<Data> list){
List<Data> m_list= new List<Data>();
foreach(Data data in list)
  if(data.name.Indexof(str) != -1){
    m_list.Add(data);
return m_list;

使用 list.Find(); 通过name 精确查找,不存在返回null

private List<Data> onFindKeyWord(string str, List<Data> list){
List<Data> m_list= new List<Data>();
Data data = list.Find(m_data=> m_data == str);
// 需要判断是否存在
if(data != null){
  m_list.Add(data);
return m_list;

关于 list 的更多使用方法,请参考:
http://www.cnblogs.com/AdaLoong/p/5528917.html

前言: 在游戏中,关于在列表中 查找某行数据时,需要通过关键字匹配,去遍历表中的数据,如果表中匹配到关键字,则返回该行数据,没有则返回null。比如查找在好友列表查找某个好友时。建立一个 data 数据:用于保存item 的所有信息 (如: id,title,content,icon 等)public class Data{ public int id; public string name 这些是不同“编辑距离”或模糊字符串比较算法的 C# 实现。 莱文斯坦距离 两个单词之间的 Levenshtein 距离是将一个单词更改为另一个单词所需的最小单字符编辑(插入、删除、替换)次数。 短语编辑距离通常用于特指 Levenshtein 距离。 它以弗拉基米尔·莱文施泰因 (Vladimir Levenshtein) 的名字命名,他在 1965 年考虑了这个距离。 var calc = new LevenshteinDistanceCalculator(); var distance = calc.Distance("Hello, world!", "Hello, Arnold!"); // 4 distance为 4: 1 删除 ( r ) 1 替换 ( w -> n ) 2 加法 ( A , r ) Damerau-Levenshtein 距离 Damer 额。。。今天看了半天Ilist&lt;T&gt;和List&lt;T&gt;的区别,然后惊奇的发现使用IList&lt;T&gt;还是List&lt;T&gt;对我的项目来说没有区别。。。  在C#,数组、ArrayList都能够存储一组对象,那么三者到底有什么样的区别呢? 数组在C#最早出现的。在内存是连续的,所以它的索引速度非常快,而且赋值与修改元素也很简单。 //第一种 只需要获取文件夹路径 string path = @"文件夹路径", fileName= "文件夹下的名称"; string[] files = Directory.GetDirectories(path, "*" +fileName , System.IO.SearchOption.AllDirectories); foreach (var item in files) Console.WriteLine(item + "\r\t"); //第二种 需要获取
c#如何使用到模糊查询,先举个最简单实用的例子,可在vs控制台应用程序输出: 定义实体类: public class Student { public int ID { get; set; } public string Name { get; set; } public int? Age { get...
Unity 问题汇总:The AnimationClip ‘***‘ used by the Animation component ‘***‘ must be marked as Legacy Unity 秒数格式化时间显示