问题描述
在.NET/C#的应用程序开发中,有需求需要比较两个字节数组(byte[])是否相同,现在使用比如笨的方法实现了一种方式,如下:
那么,在.NET/C#应用程序开发中,比较两个字节数组(byte[])是否相同的方法有还哪些呢?哪些方式更高效呢?
方案一
使用.NET中的Enumerable.SequenceEqual()
方法,如下:
方案二
使用msvcrt.dll
,如下:
方案三
在.NET 4 以及更高版本中,内置了IStructuralEquatable
接口及实现,如下:
特别注意:经测试,此方式的性能可能不高,请慎用!!!
方案四
使用unsafe
的代码来实现,如下:
方案五
另一种高效的unsafe
的实现方式,如下:
版权声明:本作品系原创,版权归码友网所有,如未经许可,禁止任何形式转载,违者必究。
发表评论
登录用户才能发表评论, 请 登 录 或者 注册