Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 顺序向后搜索_Java_Search_Sequential - Fatal编程技术网

Java 顺序向后搜索

Java 顺序向后搜索,java,search,sequential,Java,Search,Sequential,我正在学习顺序搜索,并有顺序搜索代码,但我想找到搜索过程从右(数据末尾)到左(数据开头)的数字 publicstaticvoidmain(字符串[]args){ int[]a={5,6,9,2,8,1,7}; int键=8; 布尔f=假; for(int i=0;i=0;i--)如果要查找与键匹配的所有索引,则可以创建一个方法,该方法返回一组表示找到的每个索引的整数值。您还可以使用从array.length-1到0的简单for循环从右到左循环 静态集合匹配骰子(int[]数组,int键){ 集合

我正在学习顺序搜索,并有顺序搜索代码,但我想找到搜索过程从右(数据末尾)到左(数据开头)的数字

publicstaticvoidmain(字符串[]args){
int[]a={5,6,9,2,8,1,7};
int键=8;
布尔f=假;
for(int i=0;i
如果您想从后向前搜索,我想您可以编辑for loop选项。

for(int i=a.length-1;i>=0;i--)

如果要查找与键匹配的所有索引,则可以创建一个方法,该方法返回一组表示找到的每个索引的整数值。您还可以使用从array.length-1到0的简单for循环从右到左循环

静态集合匹配骰子(int[]数组,int键){
集合索引=新的HashSet();
对于(int index=array.length-1;index>-1;index--){
int-valueAtIndex=数组[索引];
if(valueAtIndex==键){
索引。添加(索引);
}
}
回报指数;
}
范例

publicstaticvoidmain(字符串[]args){
int[]a={5,6,9,2,8,1,7};
int键=8;
设置索引=匹配骰子(a,键);
if(index.isEmpty()){
System.out.println(“找不到键的索引”);
}否则{
System.out.println(“在以下索引中找到的键:“+索引”);
}
}
如果您想用相同的键从右到左查找第一个索引,只需返回int并快速失败

静态int firstIndex(int[]数组,int键){
对于(int index=array.length-1;index>-1;index--){
int-valueAtIndex=数组[索引];
if(valueAtIndex==键){
收益指数;
}
}
抛出新的IllegalStateException(“未找到具有相同键的索引”);
} 
范例

publicstaticvoidmain(字符串[]args){
int[]a={5,6,9,2,8,1,7};
int键=8;
试一试{
int index=firstIndex(a,键);
System.out.println(String.format(“在索引%s处找到键”,索引));
}捕获(非法状态){
System.out.println(“未找到索引”);
}
}

您能更好地解释一下吗?你说找数字是什么意思?你是说有多少?还是说找到的索引?找到的索引
public static void main(String[] args) {
        int []a={5,6,9,2,8,1,7};
        int key=8;
        boolean f=false;
        for (int i = 0; i < a.length; i++) {
            if(key == a[i]){
                System.out.println("data found on index "+i);
                f=true;
                break;
            }
        }
        if (f=false){
            System.out.println("data not found");
        }
    }