java – 在其他数组中分隔数组
发布时间:2020-12-15 04:24:34 所属栏目:Java 来源:网络整理
导读:我有一个数组,我需要分成不同的数组.我有一个字符串数组,需要将它分成不同的页面(不同的数组). 首先,我得到了数组的长度 int size = array.length; 然后,我得到了我需要的页数,知道每个页面应该只有10个字符串 int numberOfPages = (int) Math.floor(size/10
我有一个数组,我需要分成不同的数组.我有一个字符串数组,需要将它分成不同的页面(不同的数组).
首先,我得到了数组的长度 int size = array.length; 然后,我得到了我需要的页数,知道每个页面应该只有10个字符串 int numberOfPages = (int) Math.floor(size/10); 然后,用户选择他想要查看的页面 int pageSelected = 2; 之后,我尝试拆分数组,但有一些例外.我试过了: Arrays.copyOfRange(array,(0+10*(pageSelected-1),10*10+(pageSelected-1))); 当我尝试打印新数组的值时出现异常. 无论如何在“页面”中拆分数组,并将这些“页面”显示为请求? @ EDIT1 解决方法
错误可能发生在这一行:
Arrays.copyOfRange(array,10*10+(pageSelected-1))); 括号中存在错误(方法需要三个参数,但从方法的角度来看,您只提供两个:最后两个按括号分组).您可以使用: Arrays.copyOfRange(array,10*(pageSelected-1),10*10+(pageSelected-1)); (删除0,因为这没用). 此外,你犯了一个语义错误:10 * 10(pageSelected-1)应替换为:10 10 *(pageSelected-1 全行如下: Arrays.copyOfRange(array,10+10*(pageSelected-1)); 虽然更好的指导方针是使用小步骤: int i = pageSelected-1; int g = 10*i; Arrays.copyOfRange(array,g,g+10);//do something with the result 为了做到最好,你最好将变量用于常量,这样 – 如果你改变主意 – 你可以轻松修改每页的项目数: int i = pageSelected-1; int perpage = 10; int g = perpage*i; Arrays.copyOfRange(array,g+perpage);//do something with the result 最后一个小小的评论:正如@j_v_wow_d所说,你应该将该部门细化,否则你将为11个项目生成一页.因此,numberOfPages的正确代码是: int numberOfPages = (int) Math.ceil((double) size/perpage); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- JDK8的java.time是否有jackson数据类型模块?
- java – 恢复活动时“线程已经开始”
- java – 由wsimport生成的代码 – 打包代码的最佳实践
- 如何在UnaryOperator java 8中使用引用方法
- java – 在类似网络应用程序之间共享Web层代码(控制器和JSP
- java – 编写一个程序,用于在8 x 8板上放置一些经过修改的大
- 10-05 Java 内部类概述和讲解
- java – 在@Constraint中清空validatedBy
- java – 在JSF 2.0中使用@ViewScoped?
- java.time.ZonedDateTime.parse和iso8601?