BoolExtensions
BoolExtensions 扩展类文档
Section titled “BoolExtensions 扩展类文档”BoolExtensions 是一个静态扩展类,为 bool 类型提供了丰富的扩展方法,包括基础判断、逻辑运算、类型转换、字符串转换等功能,旨在简化布尔值的处理和转换,提高代码的可读性和便捷性。
主要功能模块
Section titled “主要功能模块”1. 基础判断方法
Section titled “1. 基础判断方法”提供布尔值状态判断的便捷方法。
主要方法:
IsTrue()- 判断布尔值是否为 trueIsFalse()- 判断布尔值是否为 falseNot()- 对布尔值取反操作
2. 逻辑运算方法
Section titled “2. 逻辑运算方法”提供布尔值的逻辑运算功能。
主要方法:
And(bool other)- 与运算(AND)Or(bool other)- 或运算(OR)Xor(bool other)- 异或运算(XOR)Xnor(bool other)- 同或运算(等价于相等比较)Nand(bool other)- 与非运算Nor(bool other)- 或非运算
3. 数值类型转换
Section titled “3. 数值类型转换”提供布尔值到各种数值类型的转换。
主要方法:
ToInt()- 转换为 int(true=1, false=0)ToLong()- 转换为 long(true=1, false=0)ToByte()- 转换为 byte(true=1, false=0)ToShort()- 转换为 short(true=1, false=0)ToFloat()- 转换为 float(true=1.0, false=0.0)ToDouble()- 转换为 double(true=1.0, false=0.0)ToDecimal()- 转换为 decimal(true=1.0, false=0.0)
4. 字符串转换方法
Section titled “4. 字符串转换方法”提供布尔值到各种字符串格式的转换。
主要方法:
ToStringValue()- 转换为标准字符串(“True”/“False”)ToLowerString()- 转换为小写字符串(“true”/“false”)ToChineseString()- 转换为中文字符串(“是”/“否”)ToYesNo()- 转换为 Yes/No 字符串ToOnOff()- 转换为 On/Off 字符串ToYN()- 转换为 Y/N 字符串ToOneZero()- 转换为 1/0 字符串ToReverseString()- 转换为反向字符串(“False”/“True”)ToReverseChineseString()- 转换为反向中文字符串(“否”/“是”)ToEnabledDisabled()- 转换为启用/禁用字符串ToSuccessFailed()- 转换为成功/失败字符串
5. 自定义转换方法
Section titled “5. 自定义转换方法”提供布尔值到自定义类型的映射转换。
主要方法:
ToCustomString(string trueString, string falseString)- 转换为自定义字符串ToValue<T>(T trueValue, T falseValue)- 转换为指定类型的值ToEnum<TEnum>(TEnum trueEnum, TEnum falseEnum)- 转换为枚举值ToNullable(bool nullable = false)- 转换为可空布尔值
6. 条件执行方法
Section titled “6. 条件执行方法”提供基于布尔值的条件执行功能。
主要方法:
IfTrue(Action action)- 如果为 true 则执行指定操作IfFalse(Action action)- 如果为 false 则执行指定操作IfElse(Action trueAction, Action falseAction)- 根据布尔值执行不同操作
方法详细说明
Section titled “方法详细说明”IsTrue
Section titled “IsTrue”判断布尔值是否为 true。
public static bool IsTrue(this bool value)参数:
value: 待判断的布尔值
返回值:
- 如果值为 true 返回 true;否则返回 false
示例:
bool value1 = true;bool value2 = false;
bool result1 = value1.IsTrue(); // truebool result2 = value2.IsTrue(); // falseIsFalse
Section titled “IsFalse”判断布尔值是否为 false。
public static bool IsFalse(this bool value)参数:
value: 待判断的布尔值
返回值:
- 如果值为 false 返回 true;否则返回 false
示例:
bool value1 = false;bool value2 = true;
bool result1 = value1.IsFalse(); // truebool result2 = value2.IsFalse(); // false对布尔值取反。
public static bool Not(this bool value)参数:
value: 待处理的布尔值
返回值:
- 取反后的值
示例:
bool value1 = true;bool value2 = false;
bool result1 = value1.Not(); // falsebool result2 = value2.Not(); // true对两个布尔值进行与运算。
public static bool And(this bool value, bool other)参数:
value: 第一个布尔值other: 第二个布尔值
返回值:
- 与运算结果
示例:
bool value1 = true;bool value2 = false;
bool result = value1.And(value2); // false对两个布尔值进行或运算。
public static bool Or(this bool value, bool other)参数:
value: 第一个布尔值other: 第二个布尔值
返回值:
- 或运算结果
示例:
bool value1 = true;bool value2 = false;
bool result = value1.Or(value2); // true对两个布尔值进行异或运算。
public static bool Xor(this bool value, bool other)参数:
value: 第一个布尔值other: 第二个布尔值
返回值:
- 异或运算结果
示例:
bool value1 = true;bool value2 = false;
bool result = value1.Xor(value2); // true将布尔值转换为 int。
public static int ToInt(this bool value)参数:
value: 待转换的布尔值
返回值:
- true 返回 1,false 返回 0
示例:
bool value1 = true;bool value2 = false;
int result1 = value1.ToInt(); // 1int result2 = value2.ToInt(); // 0ToChineseString
Section titled “ToChineseString”将布尔值转换为中文字符串。
public static string ToChineseString(this bool value)参数:
value: 待转换的布尔值
返回值:
- true 返回 “是”,false 返回 “否”
示例:
bool value1 = true;bool value2 = false;
string result1 = value1.ToChineseString(); // "是"string result2 = value2.ToChineseString(); // "否"ToCustomString
Section titled “ToCustomString”将布尔值转换为自定义字符串。
public static string ToCustomString(this bool value, string trueString, string falseString)参数:
value: 待转换的布尔值trueString: true 时的字符串falseString: false 时的字符串
返回值:
- 自定义字符串
示例:
bool value = true;string result = value.ToCustomString("通过", "不通过"); // "通过"IfTrue
Section titled “IfTrue”如果布尔值为 true,则执行指定操作。
public static void IfTrue(this bool value, Action action)参数:
value: 待判断的布尔值action: 要执行的操作
示例:
bool value = true;value.IfTrue(() => Console.WriteLine("值为 true"));IfElse
Section titled “IfElse”根据布尔值执行不同的操作。
public static void IfElse(this bool value, Action trueAction, Action falseAction)参数:
value: 待判断的布尔值trueAction: true 时执行的操作falseAction: false 时执行的操作
示例:
bool value = true;value.IfElse( () => Console.WriteLine("值为 true"), () => Console.WriteLine("值为 false"));- 界面显示 - 将布尔值转换为用户友好的字符串格式(如”是/否”)
- 数据转换 - 在数据传输中将布尔值转换为数字或字符串
- 配置管理 - 根据配置项的状态进行不同的处理
- 逻辑运算 - 使用链式调用进行复杂的布尔逻辑运算
- API 响应 - 将布尔值转换为特定格式的字符串以适应接口要求
- 国际化 - 支持多种语言环境下的布尔值表示
- 状态映射 - 将布尔值映射到枚举或其他业务状态
- 所有方法都是扩展方法,需要通过
bool实例调用 - 数值转换方法遵循标准约定:true 映射为 1(或 1.0),false 映射为 0(或 0.0)
- 字符串转换方法提供了多种常用格式,也可通过自定义方法指定特定格式
- 逻辑运算方法提供了函数式链式调用的便捷方式
ToNullable()方法默认返回原值,只有当nullable参数为 true 时才返回 nullToValue<T>()方法支持将布尔值映射到任意类型- 反向转换方法提供与常规则转换相反的结果