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