如题,我不知道我错在哪了,运行不出来结果,编译器没有报错提示
修改后的代码如下,关键处有注释
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;
public class test1 {
/*
* 键盘输入10个数,放到数组中 a.去除该数组中大于10的数 b.将该数组中的数字写入到本地文件number.txt中
*/
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
int[] sz = new int[10];
int s = 0;
FileWriter fw = new FileWriter("number.txt", true); //第二个参数为true,文件为添加(append)模式。
BufferedWriter bw = new BufferedWriter(fw);
for (int i = 0; i < 10; i++) {
System.out.println("请输入第" + (i + 1) + "个数");
sz[i] = sc.nextInt();
}
for (int i = 0; i < 10; i++) {
if (sz[i] <= 10) {
s++;
}
}
int[] sz2 = new int[s];
int index = 0;
for (int j = 0; j < 10 ; j++) {
if (sz[j] <= 10) {
sz2[index] = sz[j];
bw.write(Integer.toString(sz2[index]) + ","); //需将int转换为String类型
bw.flush();
index++;
}
}
bw.close();
fw.close();
}
}
用心回答每个问题,如果对您有帮助,请采纳答案好吗,谢谢!
算了。直接上代码,图还是看不清。
package mmb;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;
public class test1 {
/*键盘输入10个数,放到数组中
a.去除该数组中大于10的数
b.将该数组中的数字写入到本地文件number.txt中*/
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
int[] sz = new int[10];
for (int i = 0; i < 10; i++) {
System.out.println("请输入第"+(i+1)+"个数");
sz[i] = sc.nextInt();
int s =0;
if(sz[i]<=10){
s++;
int[] sz2 = new int[s];
for (int j = 0; j < sz2.length; j++) {
sz2[j] = sz[i];
FileWriter fw = new FileWriter("number.txt");
fw.write(sz2[j]);
}
}
}
}
}
别沉啊。。。。。。。。