Seguinte pessoas, preciso fazer um método que receba uma String var e um Integer limite.
O método vai retornar um lista de Strings com o máximo de tamanho sendo o limite.
E se o limite der no meio de uma palavra vai retornar no ultimo ponto que cortou até ultimo espaço
Até agora consegui o problema é quando o limite é menor do que a palavra após o ultimo corte…a seguir o código
import java.util.ArrayList;
import java.util.List;
public class Algoritmo2 {
public List<String> retornar(String msg, Integer lim) {
List<String> lista = new ArrayList<String>();
Integer ultimoEspaco = 0;
Integer ultimaQuebra = 0;
for(int i = 0; true; i++){
if(i >= msg.length()){
System.out.println(msg.substring(ultimaQuebra));
break;
}
if(msg.charAt(i) == ' '){
ultimoEspaco = i;
}
if(i == lim){
System.out.println(msg.substring(ultimaQuebra, ultimoEspaco));
msg = msg.substring(ultimoEspaco);
i = 0;
}
}
return lista;
}
}
tá feio mas é só pra quebrar o galho por enquanto...no ligar dos lista.add tem uns System.out...
String t = "asdas dasdasd asd as dasd";
String[] separado = t.split(" ");
dai você faz um loop em separado, conta os caracteres la dentro do loop e vai incrementando… enquanto isso vai montando a sua lista de strings que será o resultado final…