这个为什么在控制台输出不了结果 而且一直在运行

/*10、 有100个人围成一个圈,
* 从1开始报数,报到14的这个人就要退出。
* 然后其他人重新开始,
* 从1报数,到14退出。
* 问:最后剩下的是100人中的第几个人?*/
import java.util.ArrayList;

public class Test27 {
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
for (int i = 1; i < 101; i++) {
list.add(i);
}
print(list);
}
public static void print(ArrayList<Integer> list) {
// 此处定义一个集合,是为了方便后面删除元素用。
ArrayList<Integer> list2 = new ArrayList<>();
// 定义一个计数器
int count = 0;
// 判断list集合中的元素个数是否为1
while (list.size() > 1) {
for (int index = 0; index < list.size(); index++) {
count++;
if (count % 14 == 0) {
list2.add(list.get(index));
}
count = 0;
}
list.removeAll(list2);
list2.clear();
}
System.out.println(list);
}

}

第1个回答  2016-10-05
这代码写的………………很明显死循环了。for里count++; 循环第一边count值是1,然后if取余不等0那么list2没有放进去东西,if外count又给赋值0…………下次循环又重复以上步骤,list.lengh永大1,所以死循环,

解决办法:你是不是应该if取余=0的时候list2.add,同时才把count的值初始化为0? 将count=0放到if里面去

服务器一直卡在控制单元
方法如下。windowsserver服务器启动tomcat后控制台总是卡住。接口拿不到数据,导致系统无法访问,需要按ctrl+c系统才能继续运行&tomcat的"ctrl+c"问题(启动假死状态)。有时候项目用tomcat启动过程中或者启动成功后,发现控制台打印信息不打印了,而且页面访问也访问不了了,必须在控制台按下回车键才能继续。...

电脑开机后F1界面闪一下就黑屏什么字都没,机子一直在运行
平时上网,运行OFFICE、PHOTOSHOP等都不会出现问题,玩CS基本不会出现这种情况,WE8有时会出现。由于冬天没有出现问题,我开始怀疑是CPU或显卡过热,(CPU和显卡风扇正常运转),拆了机箱用风扇吹照样断电。内存我换过几次插槽,没用;CPU拆过,硅胶没问题;怀疑电源供电不足,拔了光驱和机箱风扇,也没用;系统是XP,充装过几...

为什么这个C语言的程序结果显示一下就不见了?
默认是这样的,DOS程序默认退出就关闭!你可以修改一下:右击程序“属性”-“程序”,取消勾上“退出时关闭”一项,这样就不会自动关闭了。但你必须为每个程序执行同一操作,还不如跟楼上所说一样的,在主函数末尾添加getch();语句,这样程序运行到最后要等待你按下任意键才会退出关闭。main(){ \/*...

linux如何设置程序开机启动后台运行?
这样就可以了,结尾的“”符号表示后台启动jboss,从而不影响继续运行其他命令。 但这样有一个问题,nohup命令虽然可以让linux“放过”这个进程,但是nohup会同时把进程的控制台输出重定向到nohup.txt下(默认是这个文件),当然可以重定向为其他的文件,但是输出总会有的。 如果jboss运行很长时间,而且如果有很多控制台输出的...

我的显示屏为什么有时候开不了,也关不了,主机是运行的
这样的问题,基本上是硬件造成的,尤其以内存为第一个需要怀疑的对象,更换内存尝试,第二可能性是CPU虽然这东西不爱坏,可是从06年到现在我也遇到俩了,其他硬件基本上不会造成蓝屏代码随便变的情况。八、偶尔蓝屏,而且代码一闪而过重新启动的问题 这个是有有两种可能 1、以XP为例,在我的电脑上点击...

假如有10亿人同时去一个网站浏览,都按F5不松手会怎样?
网站会崩溃,任何一个网站都不可能承受的住。 我们可以粗略地估计一下,普通键盘的刷新速度最快可以达到1000次每秒,考虑到有很多软件并不需要这么快的响应速度,这些软件会降低这个频率来节省电脑资源。我自己用谷哥浏览器试了一下,按f12打开控制台选择network选项,按住f5不松手(直接在浏览器界面按住f5只会刷新一次,我想...

在C语言中0!=1?为什么?
0!=1 这个有两种解释 !=在c语言中是不等于的意思,0当然不等于1喽 !还有阶乘的意思x!表示从1一直乘到x,如3!=1*2*3=6,但规定0!=1

在eclipse中写Java时,点击运行却没有反应是怎么回事,难道是代码写错了...
不是没运行,是一直在运行,你点击运行,直接把控制台点出来就好了,你没运行估计是控制台在隐藏,死循环没结果,所以没显示·而已;感觉你的太繁琐,我简化了一下:代码:import java.util.*;public class dds { public static void main(String[] args) { int i = (int) (Math.random() ...

普通的程序员和大神级的程序员有什么区别?
多隆做事一个人能顶一个团队,比如说写一个文件系统,别人很可能是一个项目组,甚至一个公司在做,而他从头到尾都是一个人,在很短的时间内就完成了。从03年到07年,淘宝搜索引擎就是他一个人在写,一个人在维护,而且这还不是他全部的工作,另外他还做了其他很多事情。有个很偶然的机会,行癫...

windows中python3使用multiprocessing.Pool时出现的问题解决方案_百度...
控制台如果输出"handle_resultnotcatchExceptions.",表明_handle_results没有catch到所有的异常。而实际上,真的是由于task=get()这句话抛异常了。 那么,_outqueue.get()方法做了什么。深入查看源码,发现get()方法其实就是os.pipe的read\/write方法,但是做了一些处理吧。其内部实现大致如下:defPipe(duplex=True):....

相似回答