繁体   English   中英

字符串比较Java

[英]String Comparison Java

我有一个正在输出的锁组合的集合。 我要确保不会重复任何组合。 组合不仅是整数。 为了简化格式,我将它们全部转换为字符串。 允许我循环和比较每个字符串以便不重复的代码行是什么? 有任何想法吗? 例如2D阵列

谢谢。

将锁组合存储在一组中可能会更容易。 这样可以更轻松地确保它们是唯一的。

这也将更快,因为您不需要将每个字符串与数据集中的所有其他字符串进行比较...

通过Arrays.asList(T ... a)将每个组合封装为一个列表,以保持其顺序并将其存储在HashSet中,以确保contains(Object o)的唯一性和恒定时间性能,以确定是否已经存在。

import java.util.Arrays;
import java.util.List;
import java.util.HashSet;

public class UniqueLocks {
    public static void main (String[] args) {
        List lock1 = Arrays.asList("1", "22", "333");
        List lock2 = Arrays.asList("a", "bb", "ccc");
        List lock3 = Arrays.asList("eee", "bbb", "ccc");

        HashSet uniqueLocks = new HashSet(Arrays.asList(lock1, lock2, lock3));

        List duplicateLock = Arrays.asList("1", "22", "333");

        if (uniqueLocks.contains(duplicateLock)) {
            System.out.println("Lock [" + duplicateLock + "] already present.");
        }
    }
}

不确定计划使用哪种语言,但是可以检查两个字符串在C#中的值是否相同,如下所示

String myString = "Hello World!"; 
String myString2 = "Hello World!"; 

if(myString.equals(myString2)) {
    //do something cause we have a match

}

如果您有一个字符串数组,则可以遍历它们。

它与其他语言(例如java,vb.net)非常相似。

编辑:我开始编写答案后添加了Java标记。

希望这可以帮助,

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM