有一道JAVA 题不会,求大神指教该怎么做啊 ,急求!!
(模式识别方面,四个连续相等的数)编写下面的方法,测试某个数组中是否有四个连续的值相同的数字publicBooleanisConsecutiveFour(int[]val...
(模式识别方面,四个连续相等的数)编写下面的方法,测试某个数组中是否有四个连续的值相同的数字
publicBoolean isConsecutiveFour(int[] values)
编写测试程序,提示用户输入一个整数数列,如果这个数列有四个连续的具有相同值的数,那就显示true,否则显示false。 展开
publicBoolean isConsecutiveFour(int[] values)
编写测试程序,提示用户输入一个整数数列,如果这个数列有四个连续的具有相同值的数,那就显示true,否则显示false。 展开
3个回答
展开全部
代码如下……
参数跟返回值你可以自己添加咯!
Scanner qvod = new Scanner(System.in);
String s = qvod.next();
char[] c = new char[s.length()];
boolean b = false;
for (int i = 0; i < c.length; i++) {
c[i]=s.charAt(i);
}
for (int i = 0; i < c.length; i++) {
//防止数组越界操作
if (c.length>i+3) {
if (c[i]==c[i+1]&&c[i]==c[i+2]&&c[i]==c[i+3]) {
b=true;
}
}
}
if (b) {
System.out.println("TRUE");
} else {
System.out.println("FALSE");
}
-------------------------------------分割完结线--------------------------
参数跟返回值你可以自己添加咯!
Scanner qvod = new Scanner(System.in);
String s = qvod.next();
char[] c = new char[s.length()];
boolean b = false;
for (int i = 0; i < c.length; i++) {
c[i]=s.charAt(i);
}
for (int i = 0; i < c.length; i++) {
//防止数组越界操作
if (c.length>i+3) {
if (c[i]==c[i+1]&&c[i]==c[i+2]&&c[i]==c[i+3]) {
b=true;
}
}
}
if (b) {
System.out.println("TRUE");
} else {
System.out.println("FALSE");
}
-------------------------------------分割完结线--------------------------
展开全部
public static void main(String[] args) {
isConsecutiveFour(new int[]{5,2,3,5});//用户输入的数
}
public static Boolean isConsecutiveFour(int[] values){
int[] n=new int[]{5,2,3,5};///指定的数
if(n.length==values.length){
for(int i=0;i<values.length;i++){
if(n[i]!=values[i]){
System.out.println("false");
return false;
}
}
System.out.println("true");
return true;
}
return null;
}
isConsecutiveFour(new int[]{5,2,3,5});//用户输入的数
}
public static Boolean isConsecutiveFour(int[] values){
int[] n=new int[]{5,2,3,5};///指定的数
if(n.length==values.length){
for(int i=0;i<values.length;i++){
if(n[i]!=values[i]){
System.out.println("false");
return false;
}
}
System.out.println("true");
return true;
}
return null;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
最粗暴的做法..用for循环
public boolean isConsecutiveFour(int[] values){
boolean flag = false ;
int i=0 ;
int len = values.length ;
while(!flag&&i<len-1){
if(values[i]==values[i+1]){
if((i+2<len)&&values[i+1]==values[i+2]){
if((i+3<len)&&values[i+2]==values[i+3]){
flag = true ;
}
}
}
i++ ;
}
return flag ;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询