2014-05-18 34 views
0

我需要在命令行中输入一组字符串,并使用可比较的接口按长度对它们进行排序,如果匹配,则使用词典学顺序。按字母顺序排列字符串而不使用Java中的数组

我遇到的第一件事是在命令行中给出的单词分组,而不使用数组。然后,我需要在如何通过长度责令其指针...

我有我的程序设置的方法是:1。 类“弦”有主方法 2.类“LengthSortableString”它实现可比性,有一个构造函数,它接受一个字符串参数。还有一个getContents方法,它返回一个字符串,并且没有参数,以及compareTo方法。

感谢您的帮助

+1

这是一个功课问题吗? – John

+0

你允许使用内建集合(例如'List')吗? – Mureinik

+0

听起来很有家的感觉......无论哪种方式,请看Josh Bloch撰写的一本名为Effective Java的书。第25项将帮助您开始 – Leon

回答

1

无需编写代码...

使用Set<String>举行的话 - 他们只是add()它。

当需要订购它们时,请创建一个List<String>addAll()该设置。

使用Colllections.sort()与自定义Comparator<String>,其compare()方法进行比较,你描述;如果两个字符串具有相同的长度,则返回两个字符串之间的比较,否则返回长度的比较。

如果输入不会包含重复项,则可以跳过Set并从头开始使用List。

相关问题