Как преобразовать arraylist в string java
Перейти к содержимому

Как преобразовать arraylist в string java

  • автор:

Как преобразовать элементы ArrayList в строки

Задача стоит в том, чтобы удалить все дубли из коллекции, затем отсортировав, преобразовать числа в строки. Никак не могу сообразить, что не так! Моя реализация:

public static List task1(List source) < source = new ArrayList<>(new HashSet<>(source)); Collections.sort(source); String[] numbers = (String[]) source.toArray(); ArrayList g = new ArrayList(new ArrayList(Arrays.asList(numbers))); return g; > 

java.lang.ClassCastException: class [Ljava.lang.Object; cannot be cast to class [Ljava.lang.String; ([Ljava.lang.Object; and [Ljava.lang.String; are in module java.base of loader ‘bootstrap’)

Отслеживать

49.3k 17 17 золотых знаков 57 57 серебряных знаков 101 101 бронзовый знак

Из ArrayList в String

Author24 — интернет-сервис помощи студентам

Пытаюсь сделать калькулятор, если не описывать все, то все действия, что записываются в Jtextfield считаются с помощью метода eval из javaScript, уже чувствую что скажете что метод так себе, но решил пойти через него. Проблема в том, что eval возвращает результат типа double, и если я буду складывать только целые числа то он будет ругаться. Я придумал метод, который добавляет в числа «.0» тем самым делая из них тип double. Придумал как это сделать я только через Arraylist. И вот сама проблема: не могу переделанный Arraylist вернуть обратно в обычный String что бы послать в метод eval.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
JButton bIs = new JButton("="); bIs.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try { String str =textField.getText() ; ArrayList list = new ArrayList(); char[] chars = str.toCharArray(); for(int i = 0; i chars.length; i++){ list.add(chars [i]); } for(int i = list.size() - 1; i >= 0; i--) { if(list.get(i).equals('+')) { list.add(i, "0"); list.add(i, "."); } } String text = String.valueOf(list); System.out.println(text); Script(text); } catch (ScriptException e1) { } } });
1 2 3 4 5 6 7 8 9
public static double Script(String x) throws ScriptException { ScriptEngine engine = new ScriptEngineManager().getEngineByName("js"); double result = (double) engine.eval(x); System.out.println(result); String str1 = "" + result; textField.setText(str1); return result; }

Этот код не работает, скрипт не понимает эту строку
Подскажите решение этой проблемы

Как преобразовать arraylist в string java

А как создать лист, не указав класс внутренних объектов? Например мне надо написать метод универсальный что для int что для String.

Дмитрий Уровень 29
9 марта 2022

Вероятно, в предложении перед пунктом с описанием метода get(int index), указали неверно метод — должен быть accept(), по факту action().

Рустем Уровень 24
10 августа 2021

почему при попытке клонирования как в статье, получаю clone() has protected access in java.lang.Object ? или там какие-то действия за кадром остались (при этом пробовал и чтобы класс имплементировал Clonable и проброс ошибки throws CloneNotSupportedException) ?

Steve Stifler Уровень 14
1 июня 2021

Объясните пожалуйста: «add(E e) Добавляет новый элемент в конец списка. Возвращает boolean-значение.». Куда оно возвращает значение? Оно же просто добавляет элемент! Часто вижу, что что-то возвращается, но не могу это понять и представить в голове, как это работает?

�� Виктор Уровень 20 Expert
26 сентября 2020

Спасибо, отличная статья, доступно всё изложено и помогает решить соответствующие задачи. Законспектировал к себе на канал : ) — Канал в телеге про Java и Android, в котором есть книги для скачивания, статьи, видеоуроки, чат для обмена знаниями и моральной поддержки : ) Давайте учиться вместе: @LetsCodeIt p. s. Мой личный телеграм канал вкатывальщика в прогерство: @SefoNotasi

19 мая 2020

Сортировка списка по заданному правилу. Правило сортировки представляет собой реализованный интерфейс Comparator с переопределенным методом compareTo(). А я думаю, что речь идёт об интерфейсе Comparable. Все встроенные типы данных поддерживают этот интерфейс. Давайте откроем класс java.lang.Integer. Мы видим, что этот класс реализует интерфейс java.util.Comparable. Вот доказательство: public final class Integer extends Number implements Comparable

Лучший способ преобразования ArrayList в строку в Java

Баннер Баннер

Часто при разработке программ на Java возникает необходимость преобразования списка (ArrayList) в строку. Например, может потребоваться вывести содержимое списка на экран или записать его в файл.

Рассмотрим типичную ситуацию. Пусть имеется список чисел:

ArrayList<Integer> numbers = new ArrayList<>(); numbers.add(1); numbers.add(2); numbers.add(3);

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

Более эффективным решением является использование класса StringBuilder из стандартной библиотеки Java. StringBuilder позволяет быстро и эффективно создавать и модифицировать строки.

Пример преобразования списка в строку с использованием StringBuilder :

StringBuilder sb = new StringBuilder(); for (Integer number : numbers) < sb.append(number.toString()); sb.append('\t'); >String result = sb.toString();

В этом примере для каждого числа из списка вызывается метод toString() , результат добавляется в StringBuilder с помощью метода append() , затем добавляется символ табуляции. В конце StringBuilder преобразуется в строку.

Такой подход позволяет быстро и эффективно преобразовать список в строку, даже если список содержит большое количество элементов.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *