Protobuf Java - 不区分大小写的地图?

Protobuf Java - Case insensitive map?

我有一张地图,其中包含用户输入的远程机器名称,以及用户在主机上为程序 运行 输入的名称。不想要重复的条目,因为用户输入一次大写字母,然后又输入小写字母的相同名称。

原型:

map<string, string> host_and_name = 1;

存储时,理想情况下我可以使用此方法,因为地图已标记为区分大小写。虽然不是默认行为,但看不到其他装饰方式。希望我遗漏了什么。

cache.putHostAndHame( hostName, strategyName );

意识到我可以迭代所有地图值,并且仅在找不到 equalsCaseInsenstive 匹配项时才放置。如果必须的话,我最终会这样做,尽管看起来有点蛮力。

如果您需要验证并放入您的 host_and_name 映射,您可以将所有字符转换为小写,无论何时放置每个主机或名称,它都会将所有字符转换为小写。

喜欢下面

import java.io.*;
public class Test {

   public static void main(String args[]) {
      String str = "My Sample Text";

      System.out.print("Return Value :");
      System.out.println(str.toLowerCase());
   }
}
  • 输出

Return Value :my sample text

你也可以把它放在你的地图上,做一个 foreach 循环来检查主机或名字已经在地图上。 check this

我希望你明白了。如果有任何问题请在下方评论。谢谢。