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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 ぺsimon☆ 于 2013-3-5 14:30 编辑

我的代码如下:
import java.io.*;
class Date
{
        public static void main(String args[])throws IOException
        {
        
        DataInputStream in=new DataInputStream(System.in);                        String a;
        System.out.println("请输入任一寸字符串");
        a=in.readLine();
        System.out.println("你输入的字符串是"+a);
        in.close();
        }
}

报错如下:

E:\Java\jdk1.4.2\create\DataInputstream>javac Date.
Note: Date.java uses or overrides a deprecated API.
Note: Recompile with -deprecation for details.
是什么原因呢?求指导谢谢

评分

参与人数 1技术分 +1 收起 理由
洪建超 + 1

查看全部评分

3 个回复

倒序浏览
你用了过时的方法
处理字符建议使用BufferedReader
readLine()
          已过时。 该方法无法将字节正确转换为字符。从 JDK 1.1 开始,读取文本行的首选方法是使用 BufferedReader.readLine() 方法。使用 DataInputStream 类读取文本行的程序可以改为使用 BufferedReader 类,只要将以下形式的代码:
     DataInputStream d = new DataInputStream(in);
替换为:
     BufferedReader d
          = new BufferedReader(new InputStreamReader(in));

评分

参与人数 1技术分 +1 收起 理由
洪建超 + 1

查看全部评分

回复 使用道具 举报
本帖最后由 ぺsimon☆ 于 2013-3-5 15:25 编辑
李志卫 发表于 2013-3-5 14:48
你用了过时的方法
处理字符建议使用BufferedReader
readLine()


改完之后两个错误
提示in是无效变量
行了谢谢你兄弟把DataInputStream in=new DataInputStream(System.in);
改成了BufferedReader buf =new BufferedReader(new InputStreamReader(System.in));就没有报错了


回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马