diff --git a/src/libraries/System.Private.CoreLib/src/System/SearchValues/BitVector256.cs b/src/libraries/System.Private.CoreLib/src/System/SearchValues/BitVector256.cs index 74d0836960bddc..e27497d33c5d77 100644 --- a/src/libraries/System.Private.CoreLib/src/System/SearchValues/BitVector256.cs +++ b/src/libraries/System.Private.CoreLib/src/System/SearchValues/BitVector256.cs @@ -50,28 +50,32 @@ private readonly bool ContainsUnchecked(int b) public readonly char[] GetCharValues() { - var chars = new List(); + Span chars = stackalloc char[256]; + int size = 0; for (int i = 0; i < 256; i++) { if (ContainsUnchecked(i)) { - chars.Add((char)i); + chars[size] = (char)i; + size++; } } - return chars.ToArray(); + return chars.Slice(0, size).ToArray(); } public readonly byte[] GetByteValues() { - var bytes = new List(); + Span bytes = stackalloc byte[256]; + int size = 0; for (int i = 0; i < 256; i++) { if (ContainsUnchecked(i)) { - bytes.Add((byte)i); + bytes[size] = (byte)i; + size++; } } - return bytes.ToArray(); + return bytes.Slice(0, size).ToArray(); } } }