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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© IT人 中级黑马   /  2013-12-25 12:35  /  1893 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public static void main(String[] args) {
  // TODO Auto-generated method stub
       //创建一个ArrayList实例,
  ArrayList<String> al = new ArrayList<String>();
        
  //通过add方法来想al添加元素
  al.add("zhangsan");
  al.add("wangwu");
  al.add("lisi");
  al.add("xiaopan");
  al.add("dage");
      
  //生成迭代器
  Iterator it = (Iterator) al.iterator();
  
  // 记录元素的输出的顺序
  int i = 0;
  
        while(((java.util.Iterator<String>) it).hasNext()){
        String Str = (String)it.next();
(String)it.next()或it.next()提示下边这个错误
Type mismatch: cannot convert from void to String

评分

参与人数 1技术分 +1 收起 理由
乔兵 + 1

查看全部评分

7 个回复

倒序浏览
类型不匹配:不能把空转换成字符串类型
是你调用的方法返回为空,但是在你调用的时候你将这个方法的返回值赋给了一个String类型的变量
回复 使用道具 举报
it.next()返回值不就是String类型的么???请你解答一下
回复 使用道具 举报
  1. package com.ambow.action;

  2. import java.util.ArrayList;
  3. import java.util.Iterator;

  4. public class Test {

  5.         public static void main(String[] args) {
  6.                 // TODO Auto-generated method stub
  7.                 // 创建一个ArrayList实例,
  8.                 ArrayList<String> al = new ArrayList<String>();

  9.                 // 通过add方法来想al添加元素
  10.                 al.add("zhangsan");
  11.                 al.add("wangwu");
  12.                 al.add("lisi");
  13.                 al.add("xiaopan");
  14.                 al.add("dage");

  15.                 // 生成迭代器 这里应该这样写
  16.                 Iterator<String> it = al.iterator();

  17.                 // 记录元素的输出的顺序
  18.                 int i = 0;

  19.                 while (it.hasNext()) {
  20.                         String Str = it.next();
  21.                         System.out.println(i+"....."+Str);
  22.                         i++;
  23.                 }
  24.         }
  25. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
乔兵 + 1

查看全部评分

回复 使用道具 举报
IT人 发表于 2013-12-25 14:04
it.next()返回值不就是String类型的么???请你解答一下

是的  我把迭代器那里帮你写好了  你这次试试
回复 使用道具 举报
试了一下! Iterator<String> it = al.iterator();编译器报错了!提示是The type HTMLDocument.Iterator is not generic; it cannot be parameterized with arguments <String>



回复 使用道具 举报
2013_ok 中级黑马 2013-12-25 14:55:04
7#
变量名首字母小写啊,要引入的 包,java.util.Iterator;并不是import javax.swing.text.html.HTMLDocument.Iterator;引包时注意了
回复 使用道具 举报
IT人 中级黑马 2013-12-25 15:00:26
8#
谢谢!可以运行了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马