Есть ли что-то вроде TStringList от Delphi на языке Java (Android)? - PullRequest
0 голосов
/ 03 ноября 2010

Я начинаю разрабатывать в Android и решил попробовать на родном языке Java .

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

F.i. в моей библиотеке Classic Asp у меня есть функция IntToStr () ..., которая является эквивалентом IntToStr () Delphi, хотя я знаю, что VBScript не нуждается в такой функции - это делает мой код на разных языках намного более читабельным и тем самым облегчить переключение между языками.

Исходя из фона Delphi , у меня есть много библиотечного кода в Delphi, который использует TStringList классы.

Есть ли что-нибудь эквивалентное в Java ? Или как бы вы решили это?

Ответы [ 4 ]

4 голосов
/ 03 ноября 2010

Delphi StringList выглядит как список пар ключ / значение. В Java есть структуры для коллекций пар ключ / значение (Map), но реализации TreeMap и HashMap не поддерживают порядок вставки ключей. Хорошим началом для типа данных Java custum может быть:

public class TStringList {  // unconventional Java name, but you like to keep the delphi names
  private class Entry {
    String key;
    Object value;  // to keep it flexible
  }
  private List<Entry> entries = new ArrayList<Entry>();

  // add some constructors

  // implement methods of delphis StringList
}

(Примечание: заглушка не реализует интерфейс JCA (например, List), поскольку класс предназначен для имитации типа Delphi, а не для действия в качестве коллекции)

2 голосов
/ 03 ноября 2010

Это простой список строк? Если да, используйте дженерики вместо:

LinkedList<String> myStrings = new LinkedList<String>();
myStrings.add("hello");
String s = myStrings.get(0);
1 голос
/ 29 ноября 2010

Это то, что вам нужно:

org.apache.commons.collections.map.ListOrderedMap

0 голосов
/ 03 ноября 2010

Я сомневаюсь, что есть замена точного для TStringList, потому что он очень гибок и не соответствует одному точному классу структуры данных в контейнерах Java - на самом деле большинство функций TStringList должно выполняться с использованием некоторых других классов.Два года назад я реализовал в Java объект TStringList.В Java есть классные занятия, которые могут вам помочь.Я не знаю, есть ли у меня этот источник, это был всего лишь эксперимент.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...