我的代码的输出都很好,它已经排序了,但问题是,它包含一些我不需要的垃圾值,我将提供它的示例输出。
这是我的代码:
$dir -contains '6edaaec9c5b9cea3f035065d7283ca07'
Here is the Output of the Given Code
如您所见,输出显示了一些不需要的值。
我想要显示的是给出的更好的可读值。
谢谢!
答案 0 :(得分:2)
如果您使自定义类符合CustomStringConvertible协议(添加类型为description
的单个计算变量String
),那么当您打印其中一个对象时,它会显示格式良好。
您可以使用print语句的格式作为起点。
答案 1 :(得分:0)
功能已经以格式化方式打印您的学生阵列。
删除您发布的代码末尾的print(x)
以获得干净的输出。
编辑:
如果我正确理解您的需求,您还需要按GPA打印排序的学生列表。 (代码中的x)
您可以通过将x
传递给stud
函数并修复stud函数来使用函数参数而不是student var来实现。
struct Student {
var id: Int = 0;
var name: String = String();
var course: String = String();
var GPA: Float = 0.0;
}
let student = [
Student(id: 201520032, name: "Ton Agnis", course: "BSITWMA", GPA: 3.69),
Student(id: 201620122, name: "Juan Cruz", course: "BSCSSE", GPA: 2.23),
Student(id: 201723214, name: "Pedro Sy", course: "BSITAGD", GPA: 2.87),
Student(id: 201418492, name: "Phot xPro", course: "BSCPE", GPA: 3.99)
]
func stud(get studs:[Student]){
print("Student No.\t\tID\t\tName\t\t\tCourse\t\tGPA")
for i in 0..<studs.count {
print("Student \(i+1) \t \(studs[i].id)\t\(studs[i].name)\t\t\(studs[i].course)\t\t\(studs[i].GPA)")
}
}
let x = student.sorted{ $0.GPA < $1.GPA }
stud(get: x)