java - Java以Python方式获取子列表
问题描述
在python中,当你选择一个子列表时
a = [1,2,3]
sub_a = a[2:10]
它不会爆炸,但会返回[3]
。
在 Java 中,结果是完全不同的
List<Integer> a = Arrays.asList(1,2,3);
a.subList(2, 10);
将引发 IndexOutOfBoundsException。
我不打算评判不同的方法,但我想知道Java可以用Python的方式实现相同的列表切片操作吗?
解决方案
在 Java 中,您必须自己处理切片:
List<Integer> a = Arrays.asList(1,2,3);
a.subList(2, Math.min(10,a.size()));
推荐阅读
- react-native - 无法在 FlatList 中呈现对象数组
- sql - 根据标签字段条件过滤查询以列出资源。多对多 SQL 关系表的过滤查询
- c++ - 是否允许 C++ 编译器将最后一次使用的左值隐式转换为右值?
- haskell - 在对象之外更改对象的变量是否被视为副作用?
- c++ - C++ -1 index has value of last index element ? Huh?
- android - 将数字字符串格式化为 2 个十进制双精度数,与数字字符串长度无关
- powershell - 如何使用 PowerShell 在行位置的文件中插入新行?
- javascript - D&D 翻页计数器
- javascript - 按选择元素的值过滤组件
- php - Blade 模板中的 Laravel 对象访问