我需要在Java中比较两组数字。为了测试程序,两组将是相同的(123),除了一组将具有" 123"以不同的顺序。我目前正在输入" 123"作为中奖号码" 321"使用.contains()方法将游戏数字作为字符串进行比较。
我的代码如下:
if (playNum.contains(winNum))
System.out.println("True") ;
else
System.out.println("False") ;
我试图让程序识别出' 123'的任何变化。作为胜利者。任何帮助都将非常感激。
答案 0 :(得分:0)
请查看我的解决方案并告诉我这是否是您想要的:
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);
答案 1 :(得分:0)
这是一个小提示代码段,可帮助您找出问题所在。
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}");