#java #string #arraylist
#java #строка #arraylist
Вопрос:
У меня есть метод с именем файла student, в котором они представляют собой набор методов. Мне нужны эти методы для завершения лабораторной работы 13. У меня также есть arraylist объектов student. В моем коде lab 13 я получаю сообщение об ошибке, что я не могу преобразовать строку в Student.
Я перепробовал все, что мог, например, я попытался преобразовать ее, поместив student в начало кода, например student.jessica.addfriend («эмили»). но это все еще не работает. Пожалуйста, помогите мне с моей проблемой.
Это код для lab 13
import java.util.ArrayList;
public class Lab13
{
public static void main(String[] args)
{
Student jessica = new Student("Jessica", 23,
Student.SocialYear.SENIOR);
Student henry = new Student("Henry", 16, Student.SocialYear.FRESHMAN);
String n = jessica.getName();
System.out.println("One student is " n ".");
System.out.println("This student is " jessica.getAge() " years old.");
System.out.print(henry.getName() " used to be " henry.getAge() " years old.");
henry.getAge();
System.out.println(" He just had a birthday and is now " henry.getAge() " years old.");
System.out.println(jessica.getName() " is a " jessica.getSocialYear() ".");
printVote(jessica);
printVote(henry);
// HELP! Modify me to use the updated Student class.
//What type input parameter should be passed into the method?
jessica.addFriend("Erin");
jessica.addFriend("Bert");
henry.addFriend("Isaac");
henry.addFriend("Kaley");
// HELP! Modify me to use the updated Student class.
// What type of objects does the ArrayList of friends have?
printFriend(jessica, "Bert");
printFriend(henry, "Sam");
// HELP! Create more instances of the Student class for testing.
// HELP! Add friends to the ArrayLists of the instances.
// HELP! Print out the favorite friend of one of the students.
// HELP! Change the favorite friend of one of the students.
// The new favorite should already be a friend of the student.
// Print out this new favorite friend.
// HELP! Print out all the friends of one of the students.
// HELP! Check to see if a student is friends with another student.
// This test should be true (the student should have the friend).
// HELP! Check to see if a student is friends with another student.
// This test should be false (the student should NOT have the friend).
// HELP! A friend transfers and a student loses track.
// The student should unfriend the friend.
// Print out the updated list of friends.
}
/**
* This method prints whether a student can vote based on age.
*
* @param s A Student object
*/
public static void printVote(Student s)
{
if (s.canVote()) {
System.out.println(s.getName() " can vote.");
} else {
System.out.println(s.getName() " is not old enough to vote.");
}
}
/**
* This method prints whether a student knows the friend.
*
* @param s A Student object
* @param f A String representing the friend
*/
public static void printFriend(Student s, String f)
{
if (s.hasFriend(f)) {
System.out.println(s.getName() " is friends with " f ".");
} else {
System.out.println(s.getName() " does not know " f ".");
}
}
}
Это мой метод student
import java.util.ArrayList;
import java.util.Collections;
public class Student
{
public enum SocialYear { FRESHMAN, SOPHOMORE, JUNIOR, SENIOR }
private String name;
private ArrayList<Student> friends;
private int age;
private SocialYear year;
/**
* Constructor for objects of class Student
*/
public Student(String n, int a, SocialYear sy)
{
this.name = n;
this.age = a;
this.year = sy;
this.friends = new ArrayList<Student>();
}
public String getName()
{
return this.name;
}
public int getAge()
{
return this.age;
}
public void setAge()
{
this.age ;
}
public SocialYear getSocialYear()
{
return this.year;
}
public boolean canVote()
{
return this.age >= 18;
}
public void addFriend(Student friend)
{
friends.add(friend);
}
public boolean hasFriend(String friend)
{
return friends.contains(friend);
}
public void unFriend(Student friend)
{
friends.remove(friend);
}
public void getFriends()
{
for(Student s : friends)
{
System.out.println(s ",");
}
}
public Student getFavFriendName()
{
return friends.get(0);
}
public void myNewFavFriend(Student friend)
{
friends.remove(friend);
friends.add(0, friend);
}
}
Ответ №1:
Метод addFriend
принимает Student
в качестве аргумента
public void addFriend(Student friend)
Ваш код предоставляет строку.
jessica.addFriend("Erin");
Это сработало бы
jessica.addFriend(henry);
поскольку вы уже создали Student
файл с именем Генри.
Student henry = new Student("Henry", 16, Student.SocialYear.FRESHMAN);
Комментарии:
1. итак, что мне делать, как я могу преобразовать ее в student
2. ооо, я понимаю, что ты имеешь в виду