我有一个长度为n的char
数组,我不知道它的值。我需要写一个条件来检查我的数组的所有元素是否都是一个接一个等于给定的char 'a'
。
例如,当n = 4时,我通过执行以下操作将数组转换为字符串:
String str = new String(myArray);
然后我就像我一样:
if (str.equals("aaaa")) {}
但我的问题是n
的值未知。
我试着这样做:
for (int i = 0; i < n; i++) {
if (myArray[i].equals('a')) {
??
}
}
但我不知道要做'??'在if之后,因为我需要等待for循环完成,因为我希望我的数组的所有元素都等于'a'
。
答案 0 :(得分:2)
检查所有项目的过程通常如下:
就Java而言,声明匹配失败可能意味着将http://www.{name-of-project}.com
变量设置为boolean
:
false
答案 1 :(得分:1)
在Java-8中,您可以使用my_bundle.js
来完成。它会减少礼仪代码。您不必担心Stream#allMatch
和Array Length
以及setting the flag
。
breaking the loop
答案 2 :(得分:0)
怎么样:
const getFilteredVenues = (venues, { sortBy }) => {
return venues.slice(0).sort((a, b) => {
if (sortBy === "alfabetical") {
return a.venue_name.toLowerCase() > b.venue_name.toLowerCase();
} else {
return 0;
}
});
};
然后你要做的就是检查匹配的布尔值。
答案 3 :(得分:0)
您可以简单地使用正则表达式。例如:
String s = "aaaaaaaa";
if(s.matches("[a]*"))
System.out.println("s only contains a");
else if(s.matches("[A]*"))
System.out.println("s only contains A");
else if(s.matches("[aA]*"))
System.out.println("s only contains A and a");
else
System.out.println("s not match a*");
答案 4 :(得分:0)
试试这个
private static void n(){
char[] n = {'a', 'b'};
String[] myArray = {"a", "a", "a"};
for(char c : n){
int i = 0;
int j = 0;
for(String s : myArray){
if((s.equals(String.valueOf(c)))){
i++;
}
if(++j == n.length){
System.out.println(i + "->" + n.length);
if(n.length == i){
System.out.println("All the elemntes in your array are the same to char array");
}else{
System.out.println("Not the same");
}
}
}
}
}