Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java:如何将.txt中的值存储到数组中_Java_Arrays - Fatal编程技术网

Java:如何将.txt中的值存储到数组中

Java:如何将.txt中的值存储到数组中,java,arrays,Java,Arrays,我试图编写一个程序,从.txt文件中读取等级,然后按数组索引的相反顺序输出等级 import java.io.* import java.util.* public class GradePrint { public static void main(String[] args) throws IOException { Scanner in = new Scanner(new FileReader("data.txt")); int[] grades = new int[30

我试图编写一个程序,从
.txt
文件中读取等级,然后按数组索引的相反顺序输出等级

import java.io.*
import java.util.*

public class GradePrint {
public static void main(String[] args) throws IOException {
    Scanner in = new Scanner(new FileReader("data.txt"));
    int[] grades = new int[30];

    for (int i = 0; i < 30, i++){
        int grade = in.nextInt();
导入java.io*
导入java.util*
公开课成绩打印{
公共静态void main(字符串[]args)引发IOException{
Scanner in=new Scanner(新文件读取器(“data.txt”);
整数[]等级=新整数[30];
对于(int i=0;i<30,i++){
int grade=in.nextInt();

如何获取这些分数并将其放入数组中,然后以相反的顺序打印出来?

假设您的分数在文本文件中为
10 20 30 40
等,您可以在
for
循环中使用此代码:

int grade = in.nextInt(); //This code is from your code example
grades[i] = grade;
for (int i = 29; i >= 0; i--)
{
     System.out.println(grades[i]); //Print out the value at this array index.
}
要按相反顺序打印,您可以将此
用于
循环:

int grade = in.nextInt(); //This code is from your code example
grades[i] = grade;
for (int i = 29; i >= 0; i--)
{
     System.out.println(grades[i]); //Print out the value at this array index.
}

我不会使用数组,如果你不知道提前多少等级,你将在文件中

相反,请尝试使用
列表
,如下所示:

import java.io.*
import java.util.*

public class GradePrint {
public static void main(String[] args) throws IOException {
    List<Integer> grades = new ArrayList<Integer>();
    Scanner in = new Scanner(new FileReader("data.txt"));
    int[] grades = new int[30];

    for (int i = 0; i < 30, i++){
        grades.add(in.nextInt());
    }
}

其中,
i
是等级在
列表
中的位置。在这方面,你可以将
列表
视为一个数组。

你可能应该试着自己做作业。这个网站的存在是为了帮助你解决特定编程问题,而不是为你做作业。@EngineerDollery Homebook quest离子在这里不是问题。他们只需要说明他们是家庭作业,并向我们展示他们的尝试。是的,但OP只发布了他们的家庭作业问题,而不是他们尝试过的。@EngineerDollery很公平。但你最初的评论听起来好像hw q不好。只是澄清一下。首先,我在问题中陈述了什么m并不是我做作业的全部内容。其次,我被困在如何将值存储到数组中,这使得我很难继续编写程序的其余部分。我感谢你的批评,但我不是要求你做作业,我是在寻求帮助。谢谢,这将帮助我完成剩下的部分ignment。我只是对如何将值存储到数组中感到困惑。我知道文件中有30个值。那么,请记住这一点,以备将来使用;-P…有助于构建更健壮的程序。