请教关于JAVA中输出流的问题1

来源:百度知道 编辑:UC知道 时间:2024/05/27 11:45:11
程序输出大于1小于n的所有质因数
代码如下

import java.io.*;

class work1
{
public static void main(String args[])
{
int n;

DataInputStream in=new DataInputStream(System.in);
n=in.readInt();

for(int i=1,j=1;i<=n;i++)
{
if(i%3==0&&i%7==0)
{
System.out.println(j+"th num:"+i);
j++;

}
}
}
}

提示cannot find symbol
请问为什么?

DataInputStream不是用在这里的。。。

输入输出流不能乱用 DataInputStream一般用于Socket
这里该用 BufferedReader或者Scanner

键盘输入时 以一个换行符作为分割
而网络上传输的流,数据块之间 不是用的换行符

DataInputStream默认的分割符(symbol)不是回车
所以就找不到了 而BufferedReader的readLine方法 才是以回车符做分割的