簡體   English   中英

比較兩個包含一組數字的字符串,而不管它們在Java中的順序如何

[英]Comparing two strings containing a set of numbers regardless of their order in Java

我需要比較Java中的兩組數字。 為了測試程序,兩組將是相同的(123),除了一組以不同的順序具有“ 123”。 我目前正在使用.contains()方法輸入“ 123”作為中獎號碼,並輸入“ 321”作為比賽號碼,以將兩者作為字符串進行比較。

我的代碼如下:

    if (playNum.contains(winNum))
        System.out.println("True") ;
    else
        System.out.println("False") ;

我試圖使該程序將“ 123”的任何變體識別為獲勝者。 任何幫助將不勝感激。

請看看我的解決方案,讓我知道這是否是您想要的:

    String input = "123";
    String winner = "321";
    char[] inputArr = input.toCharArray();
    Arrays.sort(inputArr);

    char[] winnerArr = winner.toCharArray();
    Arrays.sort(winnerArr);

    boolean retval = Arrays.equals(inputArr, winnerArr);
    System.out.println(retval);

這里有一些提示代碼片段,可幫助您找出問題所在。

Pattern pattern = Pattern.compile(".*[^1-3].*");

   String [] inputs = {"123", "-123" , "123.12", "abcd123"};

   for(String input: inputs){
       System.out.println( "does " + input + " is number : "
                            + !pattern.matcher(input).matches());
   }

   // Regular expression in java to check if String is 6 digit number or not
   String [] numbers = {"123", "123" };
   Pattern digitPattern = Pattern.compile("\\d{3}");       

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM