为了账号安全,请及时绑定邮箱和手机立即绑定

降序以及长度?

为什么长度i=2时代码虽然有错误提示仍然能输出正确结果?还有长度不是应该是3吗?


import java.util.*;

public class HelloWorld {
    public static void main(String[] args) {
    String[] hobbies = { "sports", "game", "movie" };
    Arrays.sort(hobbies);
    for(int i=2;i<hobbies.length;i--)
    System.out.println(hobbies[i]);
   }
}


正在回答

3 回答

你那代码运行绝对会报错,因为i递减会变成负数,数组下标不可能是负数,这样就会越界,第六行代码应该改为:

for(int i=2;i<hobbies.length&&i>=0;i--);

这样就会把排序之后的hobbies数组元素按从后往前的顺序依次输出来!

0 回复 有任何疑惑可以回复我~

亲,数组的下标是从0开始的!

0 回复 有任何疑惑可以回复我~
#1

ManNW 提问者

可是长度也是从0开始的吗?那就是说长度等于行的意思?
2019-01-22 回复 有任何疑惑可以回复我~
#2

慕无忌7406412 回复 ManNW 提问者

所谓长度,就是数组中有几个元素,它的长度就是几。比如说hobbies数组有三个元素,它的长度就是3。
2019-02-16 回复 有任何疑惑可以回复我~

对啊。


0 回复 有任何疑惑可以回复我~
#1

ManNW 提问者

为什么是2不是3呢
2019-01-21 回复 有任何疑惑可以回复我~
#2

心声之新生 回复 ManNW 提问者

i表示的数组的下标,通过下标来访问元素,你数组中只有三个元素,下标从0开始,3的话就越界了
2019-03-15 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第一季(IDEA工具)升级版
  • 参与学习       1165244    人
  • 解答问题       17581    个

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

进入课程

降序以及长度?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信