我是靠谱客的博主 无心大船,最近开发中收集的这篇文章主要介绍循环实现从一个数组中按顺序任意截取几个字符。,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

百度有人提出一个问题 在一个数组中任意提取几个元素组成一个新数组。用循环游标数组的方式实现了一下。

<span style="font-family: Arial, Helvetica, sans-serif;">public class TestArray {</span>
	public static void main(String[] args) {
int[] a = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
ergodicArray(a, 5);
}
public static void ergodicArray(int[] a,int length){
if(length>a.length)
throw new RuntimeException("长度错误");
else{
int[] b=new int[length];
for(int i=0;i<length;i++)
b[i]=i;
ergodicArray(a,b);
}
}
public static void ergodicArray(int[] a, int[] b) {
while (b[0] < (a.length - b.length)) {
if (b[b.length - 1] < a.length) {
for (int i = 0; i < b.length; i++) {
System.out.print(a[b[i]]);
if(i<b.length-1)
System.out.print(',');
}
System.out.println();
++b[b.length - 1];
} else {
int j = b.length - 1;
while (j >= 0) {
if (b[j] != a.length - (b.length - j) + 1) {
// j--;
break;
} else
j--;
}
if ((b[0] == (a.length - b.length - 1) || b[j] <= (a.length - b.length + j))) {
int t = 0;
for (int i = j; i < b.length; i++) {
if (i == j) {
b[i]++;
} else {
b[i] = b[i - 1] + 1;
}
}
}
}
}
}
}

最后

以上就是无心大船为你收集整理的循环实现从一个数组中按顺序任意截取几个字符。的全部内容,希望文章能够帮你解决循环实现从一个数组中按顺序任意截取几个字符。所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(43)

评论列表共有 0 条评论

立即
投稿
返回
顶部