Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/386.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 如何修复我的数组类_Java_Arrays - Fatal编程技术网

Java 如何修复我的数组类

Java 如何修复我的数组类,java,arrays,Java,Arrays,我正在试图弄清楚如何让数组正确运行,我知道我必须将数组值更改为输入,但如果有人能帮我,我无法让程序编译。 我试图让程序输入学生的分数和名字,最后输出他们的名字和分数。 编辑抱歉,这是我第一次发布it帖子,我有一个错误 Student.java:60:error:class、interface或enum预期我在java 101中,这就是为什么它是如此低级的java,我们只知道基础知识 import java.util.Scanner; public class students { pub

我正在试图弄清楚如何让数组正确运行,我知道我必须将数组值更改为输入,但如果有人能帮我,我无法让程序编译。 我试图让程序输入学生的分数和名字,最后输出他们的名字和分数。 编辑抱歉,这是我第一次发布it帖子,我有一个错误 Student.java:60:error:class、interface或enum预期我在java 101中,这就是为什么它是如此低级的java,我们只知道基础知识

import java.util.Scanner;

public class students
{
   public static void main(String[] args)
   {
      Scanner keyboard = new Scanner(System.in);

      System.out.println("How many students?: ");
      int numofstudents = keyboard.nextInt();

      Student s = new Student();

      s.setMultipleStudents();
      s.toString();


      System.out.println("Enter the Grade for the student: ");
      int gradeofstudnets = keyboard.nextInt();


   }
}
我的第二节课是

import java.util.Scanner;

public class Student
   {

    Scanner scan = new Scanner(System.in);
    private String name;
    private int grade;
    private int[] multiplegradeinputs = new int[10];
    private String[] multipleStudent = new String[10];

    public Student()
    {
    }

    public Student(String n, int g)
    {
      name = n;
      grade = g;
    }

    public  String setMultipleStudents()
    {
      String n = "";
      for(int i = 1; i < multipleStudent.length; i++)
      {
         System.out.println("Enter student #" + i +" name: " );
         n = scan.nextLine();
         multipleStudent[i] = n;

      }

      return null;
    }



    public String multiplegradeinputs()
    {
      for(int i = 1; i <multiplegradeinputs.length; i++)
      {
         System.out.println("Enter the Grade of the student#" + i +" : ");
         grade = scan.nextInt();
         multiplegradeinputs[i] = grade;
      }
    } <--- error here

    public String toString()
    {
      String temp = "";
       for(int i = 1; i < multipleStudent.length; i++)
      {
         temp += multipleStudent[i] + " ";
      }

      return temp;

    }
}
import java.util.Scanner;
公立班学生
{
扫描仪扫描=新扫描仪(System.in);
私有字符串名称;
私人内部职系;
私有整数[]多个整数输入=新整数[10];
私有字符串[]multipleStudent=新字符串[10];
公立学生()
{
}
公立学生(字符串n,整数g)
{
name=n;
等级=g;
}
公共字符串集合multiplestudents()
{
字符串n=“”;
for(int i=1;i对于(int i=1;i您在
multiplegradeinputs()
方法中缺少返回值。

multiplegradeinputs()
方法中添加返回语句:

public String multiplegradeinputs()
{
  for(int i = 1; i <multiplegradeinputs.length; i++)
  {
     System.out.println("Enter the Grade of the student#" + i +" : ");
     grade = scan.nextInt();
     multiplegradeinputs[i] = grade;
  }
  return null; //Add this line
}
public String multiplegradeinputs()
{

对于(int i=1;i您应该创建一个学生对象,该对象保存学生的属性,例如姓名和成绩。然后您应该将所有学生对象存储在某种数据结构中,例如学生类中的数组列表中。

类名必须在java中大写,而不是

 public class students
你应该写

 public class Students
Integer.parseInt(keyboard.nextLine());
也不是写作

keyboard.nextInt();
你应该写

 public class Students
Integer.parseInt(keyboard.nextLine());
这主要是因为java充满了错误和技术规范,你很难找到。请告诉我这是否为你修复了它,因为你没有发布你得到的确切错误消息

至于您指出的错误,这是因为您的函数无论如何都需要一个字符串作为返回值,所以如果可以,请将其更改为void,或者返回一个null字符串

return null;

添加到@hitz提供的答案中

for循环中有一个bug:

for(int i = 1; i <multiplegradeinputs.length; i++)

for(int i = 1; i < multipleStudent.length; i++)
请记住,即使长度为10,在Java中索引始终以0开头,在您的示例中,索引将以9结尾

import java.util.Scanner;
公立班学生 {


编译错误是什么?您在这里提供了非常少的细节。如果您需要帮助,您需要更多地解释您的程序应该做什么以及您遇到的具体问题。Java是一种面向对象的语言。单独的学生数组和年级数组对我来说不是很好的封装。数组数据结构的级别太低。请考虑像List这样的Java集合。我可以删除问号,因为他/她缺少字符串的返回值,这会导致编译错误:)我已经看到parseInt在线研究了一点,我们没有讨论过这个问题,但是在课堂上,我试着只了解java的最低要求
import java.util.Scanner;

public class students
{
   public static void main(String[] args)
   {
      Scanner keyboard = new Scanner(System.in);

  System.out.println("How many students?: ");
  int numofstudents = keyboard.nextInt();

  Student s = new Student();

  s.setMultipleStudents();
  s.toString();


  System.out.println("Enter the Grade for the student: ");
  int gradeofstudnets = keyboard.nextInt();


   }
}