OneString2.0版本更新-0GC拼接字符串
OneString 是一个 0 GC ToString的解决方案。最近新增OneString.Concat函数, 该函数专门用来拼接字符串,不管拼接的字符串是OneString类型还是string类型,最终返回的都是一个临时字符串,并且拼接过程仍然是0GC的。
1.0版本
- 0 GC:To String 不会产生 GC。
- 支持 int、long、float、double、bool 等。
- 支持设置浮点数的精度,默认是保留小数点后两位。
- 便于使用:直接使用 ToOneString() 函数即可,它会返回一个临时string。
2.0版本
- 0 GC:String.Concat 不会产生 GC。
- float类型ToOneString的时候保留小数点后4位。
- OneString代码重构,使其更加简练。同时提供全部源码。
使用方式仍然简单,拼接字符串的时候抛弃传统的+操作符,使用OneString.Concat即可。拼接的结果也是一个临时字符串,内置了扩展方法,可以随意修改。
示例
OneStringUtility.Concat("Hello", 3.1415926.ToOneString(), false.ToOneString(), "World!");
测试
private string Hello = "Hello";
private string World = "World!";
void TestOneStringConcat()
{
#if UNITY_EDITOR
Profiler.BeginSample("TestOneStringConcat");
for (int i = 0; i < Count; i++)
{
OneStringUtility.Concat(Hello, 3.1415926.ToOneString(), false.ToOneString(), World);
}
Profiler.EndSample();
#endif
}
网址
感兴趣的可以访问 https://assetstore.unity.com/packages/slug/168465