A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张小庆 中级黑马   /  2012-3-20 13:05  /  2838 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 张小庆 于 2012-3-20 14:30 编辑

假设我定义了一个二维数组是这样的 String[][] arr={{“韩梅","18","95"},{"李雷","17","96"}};
怎样一下就把第一个一维数组输出呢?

8 个回复

倒序浏览
本帖最后由 马云 于 2012-3-20 13:33 编辑

不太明白你的一下是什么意思,
输出可以用高级for循环的嵌套形式

(追加回复)

import java.io.UnsupportedEncodingException;


public class SplitDemo {

           public static void main(String[] args) {
                                   String[][] arr={{"韩梅","18","95"},{"李雷","17","96"}};
                                  
                                   //使用嵌套高级for循环输出全部元素
                                   for(String[] arr1:arr){
                                           for(String arr2:arr1){
                                                   System.out.println(arr2);
                                           }
                                   }
                                  
                                   System.out.println("------------------------------华丽的分隔线------------------------------");
                                   //使用嵌套for循环输出第一维的全部元素(注意arr'['i']'.length的使用)
                                   for(int i=0;i==0;i++)
                                   {
                                           for(int j=0;j<arr.length;j++)
                                           {
                                                   System.out.println(arr[j]);
                                           }
                                   }
                 }


                }



顺便提下啊,在轮坛里的编辑器特定情况下过虑'[']'中括号,使用时请注意

评分

参与人数 1黑马币 +1 收起 理由
张小庆 + 1 赞一个!

查看全部评分

回复 使用道具 举报
本帖最后由 张小庆 于 2012-3-20 13:18 编辑
马云 发表于 2012-3-20 13:12
不太明白你的一下是什么意思,
输出可以用高级for循环的嵌套形式


呃~~~就是如果我这样写System.out.println(arr[0][0]);输出的结果就是 韩梅  
但我想把这个0角标的数组一起输出呢?怎么办?
回复 使用道具 举报
本帖最后由 ♂诸侯♂ 于 2012-3-20 13:21 编辑

package Test;

public class Test4 {
        public static void main(String[] args) {
                        String[][] brr={

                    {"我","爱","你"},{"是","假","的"}
                                };
                    for (int i=0;i<1 ;i++ )
                    {
                    for (int j=0;j<brr.length;j++ )
                    {
                    System.out.println(brr[j]);
                    }
                    }
}
       
}


console:


回复 使用道具 举报
这个是截图。

QQ截图20120320132258.png (21.5 KB, 下载次数: 56)

QQ截图20120320132258.png
回复 使用道具 举报
你可以套两层高级for循环
class Stringbuf{
        static String[][] arr = {{"lilei","18","19"},{"hanmeimei","17","12"},};
        //通过两次循环获得
        public static void main(String[] args){
        for(String[] str: arr){
                //System.out.println(str);
                        for(String s: str)
                                System.out.println(s);}
        }       
}
输出:
lilei
18
19
hanmeimei
17
12
回复 使用道具 举报
吴璞玉 黑马帝 2012-3-20 13:32:31
7#
好吧,楼上的代码基本是完成了要求,但是我运行的结果不是那样的,首先打印的不是数组元素而是地址,System.out.println(brr[j]);这样输出就是数组元素了。而且这样循环brr.length长度是2维数组中大括号的数量,大括号数量为4个时,下面循环会出现数组角标越界异常
回复 使用道具 举报
吴璞玉 发表于 2012-3-20 13:32
好吧,楼上的代码基本是完成了要求,但是我运行的结果不是那样的,首先打印的不是数组元素而是地址,System ...

谢谢提醒。
回复 使用道具 举报
谢谢大家啊,解决了!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马