[英]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.