【JAVA-迭代器\增强型for循环。(新手用于每天记录作业)】教程文章相关的互联网学习教程文章

java – 将计数器引入scala中的循环【代码】

我正在编写一个小程序,它将一个非常大的文件转换成多个较小的文件,每个文件将包含100行. 我正在迭代一次迭代:while (lines.hasNext) {val line = lines.next()}我想介绍一个计数器,当它达到一定值时,重置计数器然后继续.在java中我会做类似的事情:int counter = 0;while (lines.hasNext) {val line = lines.next() if(counter == 100){counter = 0; } ++counter}scala或替代方法中是否有类似的东西?解决方法:传统上在scala中使用...

java – 使用for循环创建多个对象【代码】

我想要的是在for循环中创建多个视图例for(int i =1; i<5; i++){ GridView view = new Gridview(this); }但是它创建了5个具有相同名称的gridview ..所以将来我不能为特定的gridview设置不同的选项.我如何得到,在循环中创建的gridivew获取我的名字视图解决方法:使用列表List<GridView> views = new ArrayList<GridView>(); for(int i = 1; i < 5; i++) {views.add(new GridView(this)); }然后你可以得到你的意见views.get(i);

java – 大型循环引用和JVM垃圾收集器

JVM能否找到大型循环引用并收集对象?是否有任何官方文件/链接说明相同?或者你有大型循环引用的垃圾收集的任何好/坏经验. 更新链接:http://java.sun.com/docs/books/performance/1st_edition/html/JPAppGC.fm.html#997442解决方法:从简单的角度来看,JVM使用Tracing Garbage Collection,Mark-and-Sweep.循环引用不会干扰这种算法的正确行为,因为它从“基础”级别开始,并通过引用来查找那些可以从那里到达的元素.任何无法到达的都可...

为什么在Java中必须初始化嵌套循环控制变量?【代码】

我在官方java教程中写了一个简单的“在多维数组中查找数字”.这是教程中包含的代码:class LabeledBreak {public static void main(String[] args) {int [][] numbers = {{22, 34, 675, 23, 23},{34, 76, 98, 23, 11},{65, 234, 87, 23, 76}};int searchFor = 123;boolean found = false;int i;int j = 0; // <-- this linesearch:for (i = 0; i < numbers.length; i++) {for (j = 0; j < numbers[i].length; j++) {if (searchFor...

java – 变量包括名称中的循环计数器【代码】

所以我有这个代码,其中en1是一个对象的实例.for (int i = 0; i < 20; i++) {System.out.println("Introduce el nombre de una empresa");Scanner scanner = new Scanner(System.in);en1.setName(scanner.next()); }我想将en1上的1更改为循环计数器.这可能吗?解决方法:最好的办法是使用一个数组,让每个元素对应循环的迭代.//Instantiation Enterprise[] en = new Enterprise[20];//the number of iterations you need//You do not...

java – 为什么这个循环没有终止?【代码】

这是示例代码:public static void col (int n) {if (n % 2 == 0) n = n/2 ; if (n % 2 != 0) n = ((n*3)+1) ;System.out.println (n) ;if (n != 1) col (n) ; }这很好,直到它下降到2.然后无限输出2 4 2 4 2 4 2 4 2 4.在我看来,如果2输入为n然后(n%2 == 0)为真2将被除以2到yeild 1.然后将打印1,因为(n!= 1)为假,循环将终止. 为什么不这样呢?解决方法:因为当你到达1时,你将乘以3并加1,再将你带回4. 你需要一个ELSE.我不知道jav...

java for循环执行过快会导致System.currentTimeMillis()重复【代码】

Java:我在使用System.currentTimeMillis()函数时遇到问题 我正在使用System.currentTimeMillis()在foor循环问题中生成唯一值,循环执行得太快,System.currentTimeMillis()给我重复值. 我如何生成确定的唯一值.for(int a=0;a<=10;a++){ System.out.println(System.currentTimeMillis()) }我也尝试过跟踪,但它也不是生成唯一数字的特征System.currentTimeMillis()+Math.random()解决方法:为什么不使用System.nanoTime()呢?

java_增强for循环【代码】

增强for循环(foreach): 底层使用了迭代器,简化了迭代器的书写 JDK1.5新特性 所有的单列集合都可以使用增强for循环 for(集合/数组 的数据类型   变量名 : 集合名/数组名) 1 public static void main(String[] args) {2 Collection<Integer> arrayList = new ArrayList<>();3 arrayList.add(1);4 arrayList.add(2);5 arrayList.add(3);6 arrayList.add(4);7 arrayList.add(5);8 9 //foreach循环 1...

java – 重构依赖循环的方法【代码】

我的下面的java代码会增加一个int值,具体取决于列表中有多少只狗超过某个年龄:for (int i = 0; i < dogList.size(); i++) {if (dogList.get(i).getAge() > 5) {dogsOverFive++continue;} }将我的代码重构为自己的方法最佳做法是什么?我应该将i和列表作为参数传递吗?解决方法:只需这样做:public static int olderThan(List<Dog> dogList, int age) {int count = 0;for (int i = 0; i < dogList.size(); i++) {if (do...

java – 在for循环中跳过数字【代码】

参见英文答案 > Java – Skip values in for loop 8个我试图使用for循环跳过值.就像是for (int i = 32; i <= 255 /* - but skip 128 to 159 */; i++) {char ascii = (char) i;System.out.println(ascii); }有什么建议?谢谢!解决方法: if(i >= 128 && i <= 159){// Will skip all these values.continue; }您可以在Java中的任何循环中使用continue关键字,这将导致控制流跳回到直接父循环.因此...

java – 简单循环的速度【代码】

我在Java中做了一个简单的循环来测试速度.与C中的相同循环相比,需要更多时间.执行20亿次迭代大约需要6.5秒 如果它被认为是缓慢的 – 可以做些什么来改善性能? 有人会责怪JVM的启动吗?或者 – JIT编译器没有完成它的工作? >平台:windows xp>处理器速度:3.4 GHzpublic class Jrand {public static void main (String[] args) {float f;long startTime = System.currentTimeMillis();for (int i = 0; i < 2000000000; i++) {f =...

java – 用于循环效率【代码】

我正在写一款Android游戏并试图尽可能高效. 我知道for循环比foreach更有效,但我想知道以下两个项目的效率是否存在差异:// itemsList is an ArrayListint length = itemsList.size(); for(int i=0; i < length; i++) {// do stuff }VSfor(int i=0; i < itemsList.size(); i++) {// do stuff }解决方法:这取决于.从理论上讲,第一个会更快,因为第二个将在每次迭代中进行函数调用.在实践中,这可以在很大程度上进行优化.大小...

Java中的循环继承层次结构【代码】

我知道Java中不允许使用循环继承层次结构.编译器会抛出错误,但我真正感兴趣的是知道编译失败的确切原因.class A extends B{} class B extends C{} class C extends A{} // this will give you compile time error.编译器抛出错误的原因是什么,我编写代码类C的时刻扩展了A {}解决方法:这种关系根本不可能.它定义了一个无限递归类.为了定义C类,您需要A类,定义A类需要B类,定义B类需要C类 – 然后返回起点.这是无限的,所以编译器不能这...

Java HashMap就像ArrayList一样放入了增强的for循环【代码】

例如,我可以像这样循环一个ArrayListfor (String temp : arraylist)我可以使用类似的方法循环HashMap吗?解决方法:您可以迭代键,条目或值.for (String key : map.keySet()) {String value = map.get(key); }for (String value : map.values()) { }for (Map.Entry<String,String> entry : map.entrySet()) {String key = entry.getKey();String value = entry.getValue(); }这假设您的地图具有字符串键和字符串值.

Java对于每个循环对象分配都不起作用【代码】

public class A{int val; public A(int val){this.val = val;}public void print() {System.out.println(val);}public static void main(String args[]){A[] aList = new A[10];int temp =1;for(A a : aList){a = new A(temp++); }for(A a : aList){a.print();; }}}在A.main(A.java:28)的线程“main”java.lang.NullPointerException中获取异常aList地址空间类A对象被存储但是再次迭代无法获取存储对象,对象存...