Java 检查一个数组中的n个元素是否先于另一个数组中的n个元素
Java:我想比较两个数组,我想找出数组s中的前n个条目是否在字典顺序中位于数组t中的前n个条目之前,换句话说,如果n=4,那么('b'i'n'a'r'y')小于('b'i'n'd')。因为二进制“a”的第4个元素在bind“d”的第4个元素之前 我真的很挣扎Java 检查一个数组中的n个元素是否先于另一个数组中的n个元素,java,arrays,loops,comparison,Java,Arrays,Loops,Comparison,Java:我想比较两个数组,我想找出数组s中的前n个条目是否在字典顺序中位于数组t中的前n个条目之前,换句话说,如果n=4,那么('b'i'n'a'r'y')小于('b'i'n'd')。因为二进制“a”的第4个元素在bind“d”的第4个元素之前 我真的很挣扎 @Override public boolean lessThan(char[] s, char[] t, int n) { for (int i = 0; i < n; i ++){ if (s[
@Override
public boolean lessThan(char[] s, char[] t, int n) {
for (int i = 0; i < n; i ++){
if (s[i] > t[i]){
return true;
}
}
return false;
}
@覆盖
公共布尔lessThan(char[]s,char[]t,int n){
对于(int i=0;it[i]){
返回true;
}
}
返回false;
}
检查每个字符的ASCII字符应该有效
public boolean lessThan(char[] s, char[] t, int n) {
boolean isLess = true;
for (int i = 0; i < n; i++) {
if((int) t[i] > (int) s[i]){
isLess = false;
}
}
return isLess;
}
公共布尔lessThan(char[]s,char[]t,int n){
布尔值isLess=true;
对于(int i=0;i构建字符串并进行比较
return new String(s, 0, n).compareTo(new String(t, 0, n) < 0;
返回新字符串(s,0,n)。比较(新字符串(t,0,n)<0;
s[s.length-1]char
不是ASCII;它是Unicode/UTF-16。(与.NET、JavaScript中相同…)非常感谢Andy,我无法告诉你这行代码对我有多大帮助!