首页新闻找找看学习计划

想请问一下while语句中的!=-1是什么意思呢

0
悬赏园豆:5 [已解决问题] 解决于 2018-07-02 19:28

public static void main(String[] args) {
//声明两个文件读入流
FileInputStream in1 = null,in2 = null;
//声明一个序列流
SequenceInputStream s = null;
//声明一个输出流
FileOutputStream out = null;
try {
//构造两个被读入的文件
File inputFile1 = new File("d:\\1.txt");
File inputFile2 = new File("d:\\2.txt");
//构造一个输出文件
File outputFile = new File("d:\\1and2.txt");

in1 = new FileInputStream(inputFile1);
in2 = new FileInputStream(inputFile2);

//将两个输入流合为一个输入流
s = new SequenceInputStream(in1,in2);
out = new FileOutputStream(outputFile);

int c;
while((c = s.read())!=-1) {
out.write(c);
}
in1.close();
in2.close();
s.close();
System.out.println("ok....");
}catch(IOException e) {
e.printStackTrace();
}
}

烧鸭的主页 烧鸭 | 初学一级 | 园豆:101
提问于:2018-07-02 16:54
< >
分享
最佳答案
0

行从0开始,不等-1说明有读到行。

收获园豆:5
chengeng | 菜鸟二级 |园豆:292 | 2018-07-02 17:49
其他回答(3)
0

就是c=s.read(),再然后c不等于-1做判断

华临天下 | 园豆:1259 (小虾三级) | 2018-07-02 17:00

为什么要不等于-1才做出判断呢?不是不等于才判断吗?

支持(0) 反对(0) 烧鸭 | 园豆:101 (初学一级) | 2018-07-02 17:01

@烧鸭: 反正是判断条件。。。。。

支持(0) 反对(0) 华临天下 | 园豆:1259 (小虾三级) | 2018-07-02 17:09
0

为什么是-1呢 —— 详见doc。

如果是你写的实现你也可以定义其他值。

花飘水流兮 | 园豆:10341 (专家六级) | 2018-07-02 17:39
0

你不知道文件总共有多少行

只能判断没有读到空的行时,进行操作

兰冰点点 | 园豆:394 (菜鸟二级) | 2018-07-02 18:30
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册