`
leiwuluan
  • 浏览: 707305 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

List 值你能猜对多少个,一般的人都没能答对,奇怪的List

 
阅读更多

不要运行,看看你能猜出下面有几个1,看看你的思维是什么样的。能不能全猜对。

 

1、下面有几个“1”

List<String> list=new ArrayList<String>();
list.add("1");
list.add("1");
list.add("1");
list.add("1");
list.add("4");
list.add("5");
list.add("1");
list.add("7");
list.add("8");
list.add("9");
list.add("1");

list.add("1");

for(int i=0;i<list.size();i++){
	if("1".equals(list.get(i))){
		list.remove(i);
	}else{
		list.set(i, "1");
	}
}

for(int i=0;i<list.size();i++){
	System.out.print(list.get(i)+"\t");
}

 

 

 2、下面有几个1

		List<String> list=new ArrayList<String>();
		list.add("1");
		list.add("1");
		list.add("1");
		list.add("1");
		list.add("4");
		list.add("5");
		list.add("1");
		list.add("7");
		list.add("8");
		list.add("9");
		list.add("1");
		
		list.add("1");
		
		for(int i=0;i<list.size();i++){
			if("1".equals(list.get(i))){
				list.remove(i);
				--i;
			}else{
				list.set(i, "1");
			}
		}
		
		for(int i=0;i<list.size();i++){
			System.out.print(list.get(i)+"\t");
		}

 3、下面有几个1

		List<String> list=new ArrayList<String>();
		list.add("4");
		list.add("5");
		list.add("8");
		list.add("1");
		list.add("1");
		list.add("1");
		list.add("4");
		list.add("5");
		list.add("1");
		list.add("7");
		list.add("8");
		list.add("9");
		list.add("1");
		list.add("1");
		
		for(int i=0;i<list.size();i++){
			if("1".equals(list.get(i))){
				list.remove(i);
			}else{
				list.set(i, "1");
			}
		}
		
		for(int i=0;i<list.size();i++){
			System.out.print(list.get(i)+"\t");
		}

 

 

 

分享到:
评论
16 楼 linliangyi2007 2010-07-24  
无聊的帖子啊~~~~~浪费时间之余,收益太少,沉了吧
15 楼 beneo 2010-07-24  
我以为楼主想分清楚 1 和 l 呢。。
14 楼 SoloTerran 2010-07-24  
这个题目算是什么意思呢?index都变了有什么意义呢?
沉了吧
13 楼 smiky 2010-07-24  
这种东西要倒着来才对嘛,正首来就出问题啦
12 楼 mtnt2008 2010-07-24  
这个问题,以前也遇到过

可以参见博客:

http://mtnt2008.iteye.com/blog/652570
11 楼 slaser 2010-07-24  
多线程环境下直接挂掉。
10 楼 liuyupy 2010-07-24  
想起以前编程出过错的两点: 从低到高遍历 HTML页面元素集合时的remove操作   和  用Map.KeySet+ for..in 遍历 Map的同时在循环中remove操作..
9 楼 逍遥无夏 2010-07-24  
这个就是remove以后的游标的变化么
8 楼 wzju64676266 2010-07-24  
其实很简单,list   remove   里面的参数是index ,然后调整元素的index,这跟set的remove不同,set  的remove参数是对象
7 楼 ei0 2010-07-24  
恩 后来从1开始数了, 第一个元素该是第0个的
6 楼 fanfq 2010-07-24  
huangfoxAgain 写道
这样遍历去remove肯定有问题~ iterator的remove会稳定的


正解
5 楼 ei0 2010-07-24  
1题数的是6个
4 楼 huangfoxAgain 2010-07-24  
这样遍历去remove肯定有问题~ iterator的remove会稳定的
3 楼 leiwuluan 2010-07-24  
对啊、、、新手写程序要注意的,有时候想法是对了但是逻辑不知不觉的错了,
2 楼 godtiger 2010-07-24  
<div class="quote_title">leiwuluan 写道</div>
<div class="quote_div">
<p>这样遍历删除的问题,List长度不断减少</p>
<p> </p>
</div>
<p> </p>
1 楼 leiwuluan 2010-07-24  
有时候结果还真的不是自己想的那样,一运行一看,错了。

相关推荐

    AppInventor安卓手机应用开发简易入门5-2.pdf

    1 个图片组件, 1 个垂直布局组件: 1 个标签, 1 个水平组件: 1个输入框, 1 个按钮,最后一个下一题的按钮 详细表如下: 5-2-5 组件所属列表组件名字属性名属性值说明 User InterfaceImagequestion Height 300 ...

    JAVA的基础知识

    在实践中,我们需要使用 TextBox 的构造函数创建文本框,然后设置其初始值为100,接着添加一个Command对象,当该Command被触发时,更新TextBox的内容。 2. List的使用:List是Java中用于显示一组可选择项的组件。在...

    基于 Shell 的驾照理论考试练习软件的设计与实现

    # 每个测试题作为一个目录,目录下面必须有 content.txt、options.txt 和 answer.txt 三个文件 # content.txt 文件内容为题目内容 # options.txt 文件内容为题目选项,每个选项占一行 # answer.txt 文件内容为正确...

    Android答题系统源码,答题demo,做题,2个demo

    在Android平台上,构建一个答题系统是一项常见的开发任务,尤其适用于教育、培训或娱乐应用。本资源包含两个答题系统的源码示例,可以帮助开发者理解和学习如何实现这样的功能。这两个demo虽然功能上存在一定的相似...

    使用dreamweaver制作专题教学网站PPT-专题学.pptx

    - **预览和设计**:首先,你需要设计一个动态列表页面(list.asp)来显示讨论内容。 - **数据库设计**:创建数据库(如 stuweb 的 taolun 表),存储用户和帖子信息。 - **动态站点设置**:定义站点,配置本地和远程...

    脑筋急转弯

    9. **调试与测试**:在开发过程中,使用Delphi的内置调试工具进行代码调试,确保每个功能都能正常工作。同时,通过编写单元测试来验证程序的正确性和稳定性。 10. **发布与部署**:完成开发后,需要将应用程序打包...

    Scratch少儿编程项目源代码文件案例-答题闯关.zip

    通过分析和学习这个项目,孩子们不仅可以了解基本的编程概念,还能锻炼解决问题的能力,同时享受创造游戏的乐趣。此外,它还可以作为教学材料,帮助教师或家长引导孩子逐步理解编程思维,提高其逻辑推理和创新能力。...

    asp在线考试系统 基于B/S

    解决下拉框取值问题,首先需要检查数据源是否正确连接,例如数据库中的试题类别或难度等级等是否能被正确读取。其次,要确保ASP代码能够正确地将这些数据转化为下拉框的选项。如果遇到问题,可能需要检查SQL查询语句...

    OCJP认证-3期(PX017) PX122010101018_OCJP考试大纲 -.doc

    OCJP(Oracle Certified Java Programmer)认证,也称为Sun时代的SCJP,是Oracle公司对全球Java开发者的技术能力进行验证的一种权威认证。此认证在全球IT行业内享有高度认可,是Java程序员技能评估的重要标准。OCJP...

    测验

    resultElement.textContent = `你答对了${correctAnswers}个问题,正确率为${(correctAnswers / quizQuestions.length) * 100}%`; } ``` 以上就是使用JavaScript创建测验应用的主要步骤。在这个过程中,我们涉及到...

    非常实用的java自动答题计时计分器

    总之,这个Java自动答题计时计分器是一个基础但实用的教育工具,它的设计和实现涉及了GUI编程、事件处理、数据管理等多个Java编程核心概念,对于初学者来说是一个很好的学习项目,同时也为用户提供了一个方便的自我...

Global site tag (gtag.js) - Google Analytics