Задача 1

Как оптимизировать и объединить строки в Java?

Решение

В следующем примере показана производительность конкатенации (объединения) с использованием оператора «+» и метода StringBuffer.append().

public class StringConcatenate {
   public static void main(String[] args) {
      long startTime = System.currentTimeMillis();
      
      for(int i = 0; i < 5000; i++) {
         String result = "Это "
            + "тестирование "
            + "разницы "+ "между "
            + "String"+ " и "+ "StringBuffer";
      }
      long endTime = System.currentTimeMillis();
      System.out.println("Время, затраченное на " 
         + "конкатенацию строк с использованием оператора +:" 
         + (endTime - startTime)+ " мс");
      long startTime1 = System.currentTimeMillis();
      
      for(int i = 0; i < 5000; i++) {
         StringBuffer result = new StringBuffer();
         result.append("Это ");
         result.append("тестирование ");
         result.append("разницы ");
         result.append("между ");
         result.append("String");
         result.append(" и ");
         result.append("StringBuffer");
      }
      long endTime1 = System.currentTimeMillis();
      System.out.println("Время, затраченное на конкатенацию строк " 
         + "с использованием StringBuffer: "
         + (endTime1 - startTime1)+ " мс");
   }
}

Результат

Результат может быть разным. Вышеприведенный пример кода даст следующий результат:

Время, затраченное на конкатенацию строк с использованием оператора +: 0 мс
Время, затраченное на конкатенацию строк с использованием StringBuffer: 22 мс

Задача 2

Как сделать конкатенацию строк в Java?

Решение

В следующем примере показана конкатенация строк в Java. Метод concat() возвращает строку со значением строки, переданной в метод и приложенной к концу строки, используемой для вызова этого метода. Проще говоря, этот метод объединяет строки, путем добавления одной строки в конец к другой.

public class HelloWorld { 
   public static void main(String []args) {
      String s = "Привет"; 
      s = s.concat("мир");
      System.out.print(s);
   }
}

Результат

Вышеприведенный пример кода даст следующий результат:

Приветмир

Оглавление