java 数组输出

System.out.println("--------------------------武侠小说列表-----------------------------");S... System.out.println("--------------------------武侠小说列表-----------------------------");
System.out.println("序号\t\t"+"名称\t\t"+"作者\t\t"+"简介");
List list = datas.getList();//list中包含四个数组
list.get[0] 是序号数组 list.get[1] 是图书名称数组 list.get[2] 是图书作者数组 list.get[3] 是图书简介数组
现在需要循环输出:
int i = 0;
int j = 0;
for(i=0;i<list.size();i++){
String[] Value=(String[])list.get(i);
for(j = 0; j< Value.length;j++){
if(Value[j]==null){
break;
}
System.out.print(Value[j]+"\t\t");
}
输出结果不是全部都是横的就是全部都是竖的。如何循环输出:
序号+\t\t 名称+\t\t.........
序号+\t\t 名称+\t\t.........
序号+\t\t 名称+\t\t.........
序号+\t\t 名称+\t\t.........
展开
 我来答
天天最爱帮助人
2014-03-01 · TA获得超过339个赞
知道小有建树答主
回答量:109
采纳率:0%
帮助的人:93.9万
展开全部

java中有两种常用的输出:System.out.printstring)和 System.out.println( string ),区别在于后者输出字符串后会自动换到下一行,而前者不会。

你的程序,在内层for循环中,没有if语句判断是否需要换行,所以输入语句为非条件的,也就是说,如果用print就都是横的,如果用println就都是竖的。

修改方法:

添加if语句。(从原文中 if(Value[j]==null){ 开始替换 )

if ( Value[j] != null ) {
    if (j == Value.length - 1 || Value[j+1] == null) {
        System.out.println(Value[j]+"\t\t");
    }
    else {
        System.out.print(Value[j]+"\t\t");
    }
}

else {
    break;
}

如果有什么没有表述清楚的,欢迎追问。

更多追问追答
追问
输出结果:
序号 名称 作者 简介
1 2 3
古侠今遇 寒剑孤灯 鹿鼎记
醉人岁月 犹豫丁香 金庸
天王盖地虎 铁塔镇河妖 白天不懂夜的黑
这将数组全部横着输出又换下一个数组再次输出。如何让每个数组输出一次轮流输出呢?
追答
你的意思是不是这样, 输出:
Array1[0] Array2[0] Array3[0]
Array1[1] Array2[1] Array3[1]
Array1[2] Array2[2] Array3[2]
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友81ae37efe0
2014-03-01 · TA获得超过159个赞
知道小有建树答主
回答量:239
采纳率:50%
帮助的人:130万
展开全部

既然你都能使用List集合了, 为什么不使用javabean封装??

public class Book{
    // 序号
    private int No;
    
    // 书名
    private String name;
    
    // 作者
    private String author;
    
    // 简介
    private String title;
    
    /**
    * 这里省略getter/setter读取器...
    */
    
    // 重写toString方法
    public String toString(){
        return No+ "\t\t" + name + "\t\t" + author + "\t\t" + title;
    }
}

//Code,遍历List部分代码
// List<Book> list = ....
for(Book book : list)
    System.out.println(book);

希望能帮助你!

追问

txtList.add(...);

追答
// 每次循环下一本书时创建新的对象
Book book = new Book();

//......
for(int i=0; i<list.getLength(); i++){
    book.setName(element.getAttribute("name"));
    //...
}

// java.lang.List<Book>
bookList.add(book);
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式