Java语言编写一个函数,返回一句话中出现一个单词的位置,可能有多个单词,所以你的返回类型应该是int[],怎么写

Java语言编写一个函数,返回一句话中出现一个单词的位置,可能有多个单词,所以你的返回类型应该是int[],怎么写

这个我建议用泛型为integer的集合作为返回结果就行了,所以再换成数组就没有什么用了,作用不大(现在数组都快要被淘汰了)

package com.example.demo.entity;

import java.util.ArrayList;
import java.util.Arrays;

public class Test02 {
    public static void main(String[] args) {
        String str = "fdnamefsfnamewsfhsnamejkfhuwnameefksf";
        String searchFor = "name";
        int[] ints = selectCount(str, searchFor);
        System.out.println("单词出现的位置是:"+ Arrays.toString(ints));
    }

    static  int[] selectCount(String str,String searchFor){
        ArrayList<Integer> list = new ArrayList<>();
        int index = 0;
        while ((index = str.indexOf(searchFor,index)) != -1){
            list.add(index);
            index +=searchFor.length();
        }
        int[] s = new int[list.size()];
        for (int i = 0; i< list.size(); i++){
            s[i] = list.get(i);
        }
        return s;
    }
}