如何修复我的Array类

时间:2015-05-12 19:14:48

标签: java arrays

我试图弄清楚如何让我的数组正确运行,我知道我必须将数组值更改为输入,但是如果任何人可以帮助那么我就无法编译程序。 我正在努力让该计划为学生的成绩和名字输入,最后输出他们的名字和成绩。 修改抱歉这是我发布的第一个错误消息 Student.java:60:错误:预期类,接口或枚举我在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;

    }
}

6 个答案:

答案 0 :(得分:2)

multiplegradeinputs()方法中添加return语句:

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
}

如果他们不返回任何内容,请将您的方法更改为void返回类型。

答案 1 :(得分:1)

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

 public class students

你应该写

 public class Students

而不是写

keyboard.nextInt();

你应该写

Integer.parseInt(keyboard.nextLine());

这主要是因为java充满了你很难找到的bug和技术规范。如果这样可以解决这个问题,请告诉我,因为您没有发布确切的错误消息。

至于你指出的错误,这是因为你的函数要求String作为返回值,无论如何,所以如果可以或者返回空字符串,则将其更改为void。要做到这一点,只需在方法的最后添加以下行。

return null;

答案 2 :(得分:0)

您在require 'sinatra' module Helpers extend self def barrio "barrio" end end include Helpers get '/helper' do barrio #works end get '/module_and_helper' do Foo.foo #works! end module Foo extend self def foo barrio end end 方法中缺少返回值。

答案 3 :(得分:0)

您应该创建一个包含学生属性的Student对象,例如姓名和等级。然后,您应该将所有学生对象存储在某种数据结构中,例如学生班中的数组列表。

答案 4 :(得分:0)

添加@hitz提供的答案

for循环中有一个错误:

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

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

您永远不会填充multiplegradeinputs[0]multipleStudent[0],因为您在index == 1开始循环,因此您只能存储9个学生名称,而不是10个。

更改为:

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

for(int i = 0; i < multipleStudent.length; i++)

请记住,即使长度为10,索引也始终以Java开头,在你的情况下将以9开头。

答案 5 :(得分:0)

import java.util.Scanner;

公共班学生    {

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 void 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;
  }
}

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

  return temp;

}
}

这是第二类

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();


   }
}