0

Estoy intentando separar un String el cual va contener una expresión matemática como por ejemplo: 7x9+y/1.5. El problema que tengo esta principalmente en los números de dos dígitos o decimales es decir me gustaría ir metiendo cada numero en un arreglo o un ArrayList como en el ejemplo anterior quedara algo así:

nuevoArray={7,x,9,+,y,/,1.5}

Ruslan López
  • 10,060
  • 11
  • 35
  • 68
  • Mira [ask] para que tu pregunta sea mejor recibida. También, aprovecha y haz el [tour] para entender mejor cómo funcionamos y de paso obtener tu primera [medalla](https://es.stackoverflow.com/help/badges)! y que intentaste? – gbianchi Nov 24 '20 at 18:58
  • ¿Responde esto a tu pregunta? [Cómo separar un String en Java. Cómo utilizar split()](https://es.stackoverflow.com/questions/45846/c%c3%b3mo-separar-un-string-en-java-c%c3%b3mo-utilizar-split) – Lautaro Zarandon Nov 24 '20 at 19:00
  • @LautaroZarandon no porque si tuviera un solo símbolo, en este caso puedo tener un + - / * % – Mr G Clapton Nov 24 '20 at 19:06
  • Ya intentaste usando expresiones regulares? – Ruslan López Nov 24 '20 at 23:24
  • ¿Responde esto a tu pregunta? [¿Qué significa esta expresión regular? (Referencia de expresiones regulares)](https://es.stackoverflow.com/questions/223553/qu%c3%a9-significa-esta-expresi%c3%b3n-regular-referencia-de-expresiones-regulares) – Ruslan López Nov 24 '20 at 23:24
  • Y también te recomiendo revisar: https://es.stackoverflow.com/questions/127195/separar-expresi%c3%b3n-matem%c3%a1tica-con-expresiones-regulares-en-java – Ruslan López Nov 24 '20 at 23:29

1 Answers1

-1

En este caso... lo primero que hay que hacer es validar correctamente la entrada de la fórmula, en la que sólo permita ingresar dígitos, puntos (decimal) y signos...

Una mejora a este enunciado sería agregar símbolos de agrupación, ya que éstos también alterarían el resultado de una presunta fórmula...

Yo utilizaría un ciclo , que recorre el string extrayendo el charAt(n) y evaluando cada caracter, con un ...

y con este ciclo, se procedería ir añadiendo los valores al string separado por comas, como un acumulador += de strings.

Ruslan López
  • 10,060
  • 11
  • 35
  • 68