为什么java增强for循环给出的结果与"传统"不同?

 jeson1232 发布于 2023-02-08 18:04

我认为增强的for循环只是一些语法糖,其行为与"传统"for循环完全相同.我在下面编写了一些代码,表明情况并非如此.
产出不同的原因是什么?或者我错过了什么,我应该停止以这种方式编写代码?

为什么不引用temp [(当前指数)]?对我来说,这确实是没有意义

String temp[] = { "foo:bar" };
for (String t : temp)
    t = t.split(":", 2)[1];
System.out.println(temp[0].startsWith("foo")); //true
for (int t = 0; t < temp.length; t++)
    temp[t] = temp[t].split(":", 2)[1];
System.out.println(temp[0].startsWith("foo")); //false

JB Nizet.. 7

foreach循环实际上相当于

for (int i = 0; i < temp.length; i++)
    String t = temp[i];
    t = t.split(":", 2)[1];
}

这不会改变数组的任何元素.

1 个回答
  • foreach循环实际上相当于

    for (int i = 0; i < temp.length; i++)
        String t = temp[i];
        t = t.split(":", 2)[1];
    }
    

    这不会改变数组的任何元素.

    2023-02-08 18:07 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有