Это моя функция преобразования двоичного кода в серый код.Преобразование String в char [] - Java
public void convert(String bin)
{
char[] b = bin.toCharArray();
char[] g = new char[100];
System.out.print(g[0]);
for(int i=1;i<b.length;i++)
{
System.out.print(g[i] = (b[i-1] + b[i]) - 96);
if(g[i] == '2')
{
System.out.print(0);
i++;
continue;
}
System.out.print(g[i] - 0);
}
}
У меня есть функция, которая работает отлично, но я хочу вернуть преобразованную строку из этой функции. Поэтому я придумываю приведенный ниже код, который не работает нормально, и он дает мне только одну цифру, которую я сохраняю при запуске, т. Е. G [0] = b [0].
public String convert(String bin)
{
char[] b = bin.toCharArray();
char[] g = new char[100];
g[0] = b[0];
for(int i=1;i<b.length;i++)
{
g[i] = (char)((b[i-1] + b[i]) - 96);
if(g[i] == '2')
{
g[i] = 0;
i++;
continue;
}
g[i] = g[i] - 0;
}
String gray = String.valueOf(g);
return gray;
}
Как это сделать, чтобы он дал мне результат, который я хочу.
Благодаря
Я думаю, что вы ищете 'new String (g)'. – RealSkeptic
@RealSkeptic Извините, я did'nt получаю вас –
'g [i] = g [i] - 0;' не имеет никакого эффекта, а 'g [i] = 0;', вероятно, неверно – wero