Java class delimiter

192
11 марта 2018, 22:46

Всем привет. Я относительно недавно начал изучать Java. И есть некоторые затруднения. Вот условия задачи что бы быть в курсе моего вопроса.

  1. Модифицировать предыдущую работу которая была связана с сортировкой по количеству букв, следующим образом: для букв,слов, предложений, знаков препинания и текста создать отдельные классы. Слово должно состоять из массива букв, предложения из массива слов и знаков препинания, текст из массива предложений. Заменить последовательность табуляций и пробелов одним пробелом.

  2. Создать класс, который состоит из исполнительного метода, выполняет описанную действие с предыдущей работы, но в качестве типов использует созданные классы. Необходимо обработать все исключительные ситуации, которые могут возникнуть во время выполнение кода. Все переменные должны быть описаны и значение их заданные в исполнительном методе.

У меня практически все готово кроме знаков препинания. Я вот думаю, если создать класс допустим Delimiter и там у меня есть метод и String'овое поле StringDelimiter мне придется использовать split(); такой вот вопрос как мне потом вернуть их обратно когда буду вызывать припустим некий метод print() в том же классе к примеру? Да кстати нельзя использовать коллекции. Заранее благодарен.

Собственно мой код

import java.nio.charset.StandardCharsets;
class Sentences {
    private String wordSt, replace;
    public Sentences() { }
    public Sentences(String wordSt) {
        this.wordSt = wordSt;
        String[] words = wordSt.split(" ");
        Word wrd = new Word();
        for(String word : words) {
            wrd.enter_word(word);
        }
    }
}
class PlaceSpaces {
   private String stroke, replace;
   public void space_replacing(String stroke) {
       replace = stroke.replaceAll("\\s+", " ");
       System.out.print(replace);
   }
}
class Word {
   private String letters;
   public void enter_word(String input) {
       int[] symbols = new int[1000];
       for (byte current : input.getBytes(StandardCharsets.UTF_8))
           symbols[current]++;
       java.lang.StringBuilder builder = new java.lang.StringBuilder();
       for (int count = 1; count < input.length(); count++)
           for (char charCode = 0; charCode < symbols.length; charCode++)
              if (symbols[charCode] == count)
                 for (int i = 0; i < count; i++) builder.append(charCode);
       String ss = builder.toString();
       PlaceSpaces ps = new PlaceSpaces();
       ps.space_replacing(ss);
     //System.out.print(builder.toString());
   }
}

public class Laba4 {
    public static void main(String[] args) {
//        Sentences word = new Sentences();
//        word.sort();
//        Word wrd = new Word();
//        wrd.word();
//        Word wrd = new Word();
//        wrd.enter_word("hhhhheeelllo     aaaaaabb");
          Sentences st = new Sentences("hhhhheeelllo     aaaaaabb");
        //st.showWord();
    }
}
Answer 1

Все я понял как мне нужно добавить это. Естественно это не то что я ожидал но все таки)

class Separator {
    private final static String SEPARATORS = new String(",. \\t!\\\";:'-");
    public boolean isSeparator(String stroke) {
        for( int i=0; i < stroke.length(); i++ ) {
            if(SEPARATORS.indexOf(stroke.charAt(i)) >= 0) {
                return true;
            }
        }
        return false;
    }
}
READ ALSO
Разработка android приложения на диплом [требует правки]

Разработка android приложения на диплом [требует правки]

Взял себе тему " тайм-менеджмент "

181
Как из Java пойти в BigData? [требует правки]

Как из Java пойти в BigData? [требует правки]

Добрый день ,являюсь Java программистом и хочу понемногу вникать в BigData )Не могу найти схему для изучения в Java более мене всё было Языка ДЖава...

189
Как отсортировать 1 список с помощью 2?

Как отсортировать 1 список с помощью 2?

Есть 2 спискаПодскажите или дайте совет, как отсортировать 1 список с помощью 2

150
Hibernate и многопоточность

Hibernate и многопоточность

ЗдравствуйтеПрошу разъяснить особенности работы hibernate при использовании нескольких потоков

150