替换范围内的数组值

时间:2020-03-27 09:55:14

标签: ruby

给出以下数组。

arr=[0,1,2,3,4,5,6,7,8,9...,10000]

如何有效替换给定范围内的值...

预期输出:

[0,1,2,3,4,5,6,7,7,7,7,7...,10000]

可能喜欢执行此操作或某些操作,但是效果不佳,因为它不是替换而是删除范围内指定的所有元素,并替换为一个元素。

arr[8..100]=7

1 个答案:

答案 0 :(得分:1)

您可以使用Array#fill方法。

@Service
public class StoreService {

    private List<ItemDetails> itemDetailsList = new ArrayList<>(Arrays.asList(
            new ItemDetails(1,"5Rs GOODDAY Biscuit",5.00,"SWEET"),
            new ItemDetails(2,"10Rs GOODAY Biscuit,",10.00,"SALTY"),
            new ItemDetails(3,"25Rs GOODAY Biscuit",25.00,"CREAMY")
            ));

    public List<ItemDetails> getItemDetails()
    {
        return itemDetailsList;
    }
    public ItemDetails getSingleItem(Integer id) {
        return itemDetailsList.stream().filter(n->n.getItemId().equals(id)).findFirst().get();
    }

    public ItemResponse addSingleItem(ItemDetails itemDetails) {
        itemDetailsList.add(itemDetails);
        ItemResponse itemResponse = new ItemResponse();
        itemResponse.setMessage("Item added successfully");
        return itemResponse;
    }
}