[Unity&C#]简化IF语句的一种方式x => x.name == var_str
2017-06-06 19:04
483 查看
无意间看到这样一个用法,和 foreach 结合在一起使用。简化了使用 if 语句
foreach (Father var_fa in fa_list)//遍历每个 fa_list 表
{
var_id = fa_list.Find(x => x.name == var_str).id;
//找到 Father 类型 的x 的 name 变量 == 和 索引字符串var_str 相等 的Father 类型变量
//显示该 变量 的ID
}
上面的这一句话等同于下面的这句IF 语句
foreach (Father var_fa in fa_list)//遍历每个 fa_list 表
{
if(var_fa.name == var_str)
{
var_id = var_fa.id;
}
}
显示结果:
把索引字符串 var_str 改为 "a2",结果如下所示
foreach (Father var_fa in fa_list)//遍历每个 fa_list 表
{
var_id = fa_list.Find(x => x.name == var_str).id;
//找到 Father 类型 的x 的 name 变量 == 和 索引字符串var_str 相等 的Father 类型变量
//显示该 变量 的ID
}
上面的这一句话等同于下面的这句IF 语句
foreach (Father var_fa in fa_list)//遍历每个 fa_list 表
{
if(var_fa.name == var_str)
{
var_id = var_fa.id;
}
}
using System.Collections; using System.Collections.Generic; using UnityEngine; public class Son : MonoBehaviour { private void Start() { List<Father> fa_list = new List<Father>();//建立 一个 Father 类型 的List 表 fa_list.Add(new Father("a1",11));//向 fa_list 中添加 Father 的数据 fa_list.Add(new Father("a2", 22)); fa_list.Add(new Father("a3", 33)); int var_id = -1 ;// string var_str = "a2";//索引 字符串 foreach (Father var_fa in fa_list)//遍历每个 fa_list 表 { var_id = fa_list.Find(x => x.name == var_str).id; //找到 Father 类型 的x 的 name 变量 == 和 索引字符串var_str 相等 的Father 类型变量 //显示该 变量 的ID } Debug.Log(" "+ var_str+" " + var_id); } }
显示结果:
把索引字符串 var_str 改为 "a2",结果如下所示
相关文章推荐
- [Unity&C#]简化IF 语句的几种方法
- DbUtils 扩展BeanProcessor的处理方式,使其能够处理如DATA_OBJECT_NAME -> dataObjectName这样的映射关系
- C# List<T>使用方式
- unity->C#多接口类继承
- 关于python函数中的if __name__ =="__main__"语句
- <C#> var--隐式类型
- PDO 简介——预处理语句和存储过程 $stmt->bindParam(':name', $name);
- &lt;展现C#&gt;第六章控制语句
- unity->C#简单的重载+继承
- <Unity UGUI>使用c#反射实现UGUI文本显示的国际化
- unity->C#简单的继承
- 一个宏比较两个数的大小(不用>,if语句)
- 安装Apache服务器出现<OS 10013> 以一种访问不允许的方式做了一个访问套接字的尝试
- <c:if test="${fn:contains(name, searchString)}">
- Java基础--->08.判断语句(if、else if、switch、while、do while)。
- jsp <input type="file"> 清空value值的一种方式
- 黑马程序员——java基础知识篇——>if语句、switch语句
- 黑马程序员--C#基础(三)-->运算符,语句,控制台输入输出
- 一种C#读写二进制文件的通用方法<转>
- <Android>超时处理的一种方式