У меня есть массив строк, который выглядит следующим образом:Java печатать некоторые символы из массива
[67, +, 12, -, 45]
Я хочу напечатать его так, что он выглядит следующим образом:
67 12 + 45 -
Вот код Я пытаюсь использовать это.
String[] temp = line.split(" ");
String tmp = line.replaceAll("\\s+","");
for(int i = 0; i < temp.length; i++)
{
if(isInt(temp[i]) == false)
{
expression = temp[i];
firstExp = true;
}
else if(isInt(temp[i]) == false && firstExp == true && secondExp == false)
{
System.out.print(expression);
secondExp = true;
}
else if(isInt(temp[i]) == false && firstExp == true && secondExp == true)
{
System.out.print(expression);
firstExp = false;
secondExp = false;
}
else
{
System.out.print(temp[i]);
}
}
firstExp и secondExp являются булевыми, которые проверяют для выражений, которые должны появиться в массиве. isInt() - это просто метод, используемый для определения того, является ли строка числом. Прямо сейчас, все это делает код выводится следующее:
671245
Есть ли какое-то правило, чтобы добраться до этого результата '67 12 + 45 -' –
основном правилом является то, что она должна напечатать все номера, связанные с одно выражение сначала, а затем напечатать само выражение. – Generalkidd
Итак, как насчет массива вроде: 65, 23, +, 36, -, 45? какой будет выход? –