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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

package LineNumberReader;

import java.io.*;

public class LineNumberReader
{
        public static void main(String[] args) throws IOException
        {
                FileReader fr = new FileReader("Arraytest.java");
               
                LineNumberReader lnr = new LineNumberReader(fr);
               
                String line = null;
               
                while((line = lnr.readLine()!= null)
                {
                        System.out.println(lnr.getLineNumber():+"  "+line);
                }
        }

}

8 个回复

正序浏览
你写这样的代码,好像编译也有问题吧,先通过编译再说。
回复 使用道具 举报
原因其实很简单:
楼主使用的类名和LineNumberReader这个API中的类重名了,jvm怎么知道要使用哪一个类来编译生成class文件。

另外还想提醒的是,楼主写包名的时候,尽量不要和类名一致,并且包名一般小写比较好,并且使用一些 . 来分隔包的信息
比如cn.edward.line_num_test   之类的,我写的也不一定最规范,楼主可以集思广益稍微改善一些。

纯属个人建议,希望能互相学习。
回复 使用道具 举报
依然小马哥 发表于 2012-5-9 14:08
还是有错位额、、

没看到您的错误提示,右边没了!
回复 使用道具 举报
隋营营 发表于 2012-5-8 11:04
修正了一下:
public static void main(String[] args) throws Exception {
        FileReader fr = new F ...

还是有错位额、、

QQ截图20120508104442.gif (7.93 KB, 下载次数: 54)

QQ截图20120508104442.gif
回复 使用道具 举报
eclipse有6.5了?别吓我,大哥,小弟现在用的eclipse 3.5,还以为是很新的。
原因1楼那哥们指出来了,你那代码编译应该有错吧。
回复 使用道具 举报
修正了一下:
public static void main(String[] args) throws Exception {
        FileReader fr = new FileReader("Arraytest.java");

        LineNumberReader lnr = new LineNumberReader(fr);

        String line = null;

        while ( (line = lnr.readLine()) != null ) {    //少写了一个括号吧
            System.out.println(lnr.getLineNumber() + ":  " + line);
        }
}

试下,应该没问题 了!


回复 使用道具 举报
你的while循环条件内的语句少了一个括号
while((line = lnr.readLine())!= null)
在Inr.readLine()后面再加个 )   就行
回复 使用道具 举报
while((line = lnr.readLine()!= null) //是不是这里写错了  while((line = lnr.readLine())!= null)
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马