• 主页
  • Java SE
  • J2ME
  • Web开发
  • Java EE
  • Eclipse

这个用JAVA怎么实现?

qq_28484955 2019-10-12 06:56:28
集合a里有如下字符串: “1,2,3,5,7” “1,2,4,6,8” “1,3,4,6,8” “2,3,4,5,7” “2,3,5,7,8” “3,4,5,7,10” “4,5,6,7,8” 怎样把集合a中的两连数,三连数,四连数,五连数分别放到集合b,c,d,e中?
...全文
34 点赞 收藏 2
写回复
2 条回复
qq_28484955 2019年11月01日
引用 1 楼 淡青の月的回复:
List<String> a = new ArrayList<>();
List<String> b = new ArrayList<>();
List<String> c = new ArrayList<>();
List<String> d = new ArrayList<>();
List<String> e = new ArrayList<>();
a.add("1,2,3,5,7");
a.add("1,2,4,6,8");
a.add("1,3,4,6,8");
a.add("2,3,4,5,7");
a.add("2,3,5,7,8");
a.add("3,4,5,7,10");
a.add("4,5,6,7,8");
for (String s : a) {
String[] strs = s.split(",");
int[] arr = new int[strs.length];
for (int i = 0; i < arr.length; i++) {
arr[i] = Integer.parseInt(strs[i]);
}
int l = arr.length - 1;
if (arr[l] - arr[0] == 4) {
e.add(s);
} else if (arr[l] - arr[1] == 3 || arr[l - 1] - arr[0] == 3) {
d.add(s);
} else if (arr[l] - arr[2] == 2 || arr[l - 1] - arr[1] == 2 || arr[l - 2] - arr[0] == 2) {
c.add(s);
} else if (arr[l] - arr[3] == 1 || arr[l - 1] - arr[2] == 1 || arr[l - 2] - arr[1] == 1 || arr[l - 3] - arr[0] == 1) {
b.add(s);
}

}
System.out.println(b);
System.out.println(c);
System.out.println(d);
System.out.println(e);

比较笨的方法,只适合本题。
你好,那如果是七个数字要怎样实现呢?
回复 点赞
淡青の月 2019年10月12日
List<String> a = new ArrayList<>();
List<String> b = new ArrayList<>();
List<String> c = new ArrayList<>();
List<String> d = new ArrayList<>();
List<String> e = new ArrayList<>();
a.add("1,2,3,5,7");
a.add("1,2,4,6,8");
a.add("1,3,4,6,8");
a.add("2,3,4,5,7");
a.add("2,3,5,7,8");
a.add("3,4,5,7,10");
a.add("4,5,6,7,8");
for (String s : a) {
String[] strs = s.split(",");
int[] arr = new int[strs.length];
for (int i = 0; i < arr.length; i++) {
arr[i] = Integer.parseInt(strs[i]);
}
int l = arr.length - 1;
if (arr[l] - arr[0] == 4) {
e.add(s);
} else if (arr[l] - arr[1] == 3 || arr[l - 1] - arr[0] == 3) {
d.add(s);
} else if (arr[l] - arr[2] == 2 || arr[l - 1] - arr[1] == 2 || arr[l - 2] - arr[0] == 2) {
c.add(s);
} else if (arr[l] - arr[3] == 1 || arr[l - 1] - arr[2] == 1 || arr[l - 2] - arr[1] == 1 || arr[l - 3] - arr[0] == 1) {
b.add(s);
}

}
System.out.println(b);
System.out.println(c);
System.out.println(d);
System.out.println(e);

比较笨的方法,只适合本题。
回复 点赞
发动态
发帖子
Java
创建于2007-09-28

1.8w+

社区成员

8.1w+

社区内容

Java相关技术讨论
社区公告
暂无公告