【发布时间】:2018-01-26 13:21:25
【问题描述】:
列表有值:
Aa
Bb
CC
我想通过发送不区分大小写的值来获取原始值。 示例
public class TEST {
static List<String> list;
/**
* Launch the application.
*/
public static void main(String[] args) {
list.add("Aa");
list.add("Bb");
list.add("CC");
//should return Aa
String originalValue = getOriginalElement("aa");
//should return Bb
originalValue = getOriginalElement("BB");
//should return CC
originalValue = getOriginalElement("cc");
}
static public String getOriginalElement(String caseInsensitiveStr){
String magic ="";
// magic happens here
// magic =
return magic;
}
}
java 8 流解决方案也受欢迎
【问题讨论】:
-
@Eugene,同意作为直接的解决方案,但对于大型列表来说会很慢。如果没有其他方法会使用它。 (谈equalsIgnoreCase)
-
你是否测量了这个以得到肯定?
-
请在发布之前修复您的代码。由于各种原因,这无法正常工作。你也应该先自己尝试一下。这里有一些提示:1. 初始化您的列表,2. 您需要将您的列表传递给您的 getOriginalElement 方法,3. 可以使用包含 + toUppercase 或流
-
这篇博文怎么也没有经典的你以前试过什么
-
@VextoR 如果您担心它是 O(n),请使用地图
标签: java list data-structures java-8