Я пытаюсь сформировать строку (длиной 10 000) с 1 и 0 на основе определенного условия «действительно».
Хотя я могу это сделать, меня беспокоит производительность, и мне понадобится помощь, чтобы решить, какой из двух приведенных ниже методов будет более эффективным.
Способ 1 (с использованием StringBuilder)
StringBuilder output = new StringBuilder();
for( int i = 0; i < 10000; i++ )
{
if ( valid )
{
output.append( "1" );
}
else
{
output.append( "0" );
}
}
Способ 2 (с использованием целочисленного массива)
int[] gridArray = new int[ 10000 ];
for( int i = 0; i < 10000; i++ )
{
if ( valid )
{
gridArray[i] = 1;
}
}
//Convert grid array to string output
Кроме того, как лучше преобразовать целочисленный массив в строку?
BitSet
делает более эффективным формирование строки с1
s и0
s? Он по-прежнему используетStringBuilder
вtoString()
. - person lexicore   schedule 21.03.2018