java中假设有一个Student类,其中有两个属性name和age,现在要统计age大于20和name为null的数据在集合中的百分比
时间: 2024-05-05 15:15:02 浏览: 12
假设有一个List<Student> students,则可以使用如下代码统计符合条件的数据百分比:
```java
int count = 0;
for(Student s : students) {
if(s.getAge() > 20 && s.getName() == null) {
count++;
}
}
double percentage = (double)count / students.size() * 100;
```
其中,count用来统计符合条件的数据个数,percentage用来存储百分比,students.size()表示集合中元素的总个数。注意要将count转换为double类型,否则计算结果会自动向下取整。
相关问题
在一个student类中,重写hashcode()和equals()的方法,hashcode()的返回值是name的哈希值与age的和
好的,下面是一个示例代码:
```java
public class Student {
private String name;
private int age;
public Student(String name, int age) {
this.name = name;
this.age = age;
}
@Override
public int hashCode() {
return name.hashCode() + age;
}
@Override
public boolean equals(Object obj) {
if (obj == null || getClass() != obj.getClass()) {
return false;
}
Student other = (Student) obj;
return name.equals(other.name) && age == other.age;
}
}
```
在上面的代码中,我们重写了`hashCode()`和`equals()`方法。`hashCode()`方法的返回值是`name`的哈希值与`age`的和,这是一种常见的计算哈希值的方法。`equals()`方法则比较了两个`Student`对象的`name`和`age`是否相等。
需要注意的是,当重写`equals()`方法时,我们还要重写`hashCode()`方法,以保证两个相等的对象返回相同的哈希值。
用Java编写一个Student类,包含name和age属性,提供有参构造方法。(2)在Student类中,重写toString()方法,输出age和name的值。(3)在Student类中,重写hashCode()和equals()方法。·hashCode()的返回值是name的哈希值
好的,下面是代码实现:
```java
public class Student {
private String name;
private int age;
public Student(String name, int age) {
this.name = name;
this.age = age;
}
@Override
public String toString() {
return "name: " + name + ", age: " + age;
}
@Override
public int hashCode() {
return name.hashCode();
}
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (obj == null || getClass() != obj.getClass()) {
return false;
}
Student student = (Student) obj;
return Objects.equals(name, student.name);
}
}
```
这个代码实现了一个名为`Student`的类,包含了`name`和`age`两个属性,提供了有参构造方法。重写了`toString()`、`hashCode()`和`equals()`方法。其中,`toString()`方法输出`name`和`age`的值,`hashCode()`方法返回了`name`的哈希值,`equals()`方法比较了两个`Student`对象的`name`属性是否相等。
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)