我如何排序String
阵列我如何获得最大版本?
String[] s = {"0.1","0.3","0.6","0.4","0.5","0.2","0.7","0.8","0.9","0.10"};
排序我不意味在这里将其转换成整数,并得到结果作为0.9
。
这里我想要得到的值为0.10
。
这里在这种情况下,如果字符串数组包含1.1
那么最大值将是1.1
。
我能够获得最高值,如果数组是这样的,即
String[] s = {"0.1","0.4","0.3","0.4","0.5","0.2","0.7","1.8","2.9","3.1"};
我的代码将这个字符串数组工作,但假设如果
String[] s = {"0.1","1.4","1.3","0.4","0.5","0.2","2.7","1.8","2.9","0.1"};
我的代码。
public String createNewVersion(
String[] entityVersionHistory) {
Map<Integer, List<Integer>> m_Map1 = new HashMap<Integer, List<Integer>>();
String prevKey = "0";
String currentKey = null;
List<Integer> list = new ArrayList<Integer>();
for (String str : entityVersionHistory)
{
String[] splitVersion = str.split("\\.");
currentKey = splitVersion[0];
if(!prevKey.equals(currentKey))
{
Integer s = new Integer(splitVersion[1]);
m_Map1.put(Integer.valueOf(prevKey), list);
list = new ArrayList<Integer>();
list.add(s);
prevKey = currentKey;
}
else
{
Integer s = new Integer(splitVersion[1]);
list.add(s);
}
}
m_Map1.put(Integer.valueOf(prevKey), list);
我该如何做到这一点?
为什么downvote?如果有人已经很好地阅读了这个问题,当他尝试这个时,他只能得到这个问题的难度。 – vikiiii
按照什么标准确定“最大”? “0.9”>“0.10”的唯一方法是通过字符串的长度(或者,我想,按照您在特定数组中的位置)。 – iamnotmaynard
@vikiii:为什么不是最大的'0.9'? – Blender