Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package main;
- import java.util.ArrayList;
- import java.util.Arrays;
- /**
- * EM RESPOSTA A http://respostas.guj.com.br/52035-quebrar-string-de-4-em-4-caracteres
- */
- public class StringCutter {
- public static String[] cutted(String source, int power){
- //System.out.println("Cortando a String \"" + source + "\" em " + power + " em " + power + " unidade(s)...");
- System.out.println(new StringBuilder("Cortando a String \"").append(source).append("\" em ").append(power).append(" em ").append(power).append(" unidade(s)...").toString());
- ArrayList<String> listaAuxiliar = new ArrayList<>();
- for (int i = 0; i < source.length(); i += power){
- try {
- StringBuilder x = new StringBuilder();
- x.append(source.substring(i, i+power));
- listaAuxiliar.add(x.toString());
- }
- catch (ArrayIndexOutOfBoundsException | StringIndexOutOfBoundsException e){
- StringBuilder y = new StringBuilder();
- for (int j = i; j < source.length(); j++){
- y.append(source.charAt(j));
- }
- listaAuxiliar.add(y.toString());
- }
- }
- System.out.println("O resultado é:");
- return listaAuxiliar.toArray(new String[listaAuxiliar.size()]);
- }
- public static void main(String[] args) {
- //ALGUNS TESTES...
- System.out.println(Arrays.toString(cutted("1234", 4)));
- System.out.println();
- System.out.println(Arrays.toString(cutted("12345", 4)));
- System.out.println();
- System.out.println(Arrays.toString(cutted("123456", 4)));
- System.out.println();
- System.out.println(Arrays.toString(cutted("12345678", 4)));
- System.out.println();
- System.out.println(Arrays.toString(cutted("123456789", 4)));
- System.out.println();
- System.out.println(Arrays.toString(cutted("123", 4)));
- System.out.println();
- System.out.println(Arrays.toString(cutted("1", 4)));
- System.out.println();
- System.out.println(Arrays.toString(cutted("123", 3)));
- System.out.println();
- System.out.println(Arrays.toString(cutted("1234", 3)));
- System.out.println();
- System.out.println(Arrays.toString(cutted(".", Integer.MAX_VALUE)));
- System.out.println();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement