首页 > 编程语言 >java 判断list对象中的一个属性值是否相同

java 判断list对象中的一个属性值是否相同

时间:2024-03-08 14:55:36浏览次数:30  
标签:java List list public property Example 属性

要判断Java中List对象的某个属性值是否全部相同,可以使用Java 8的流(Stream)API来简化操作。以下是一个示例代码,演示如何检查一个对象列表中的某个属性是否全部相同:

java
import java.util.List;
import java.util.Objects;

public class ListUtils {

public static <T> boolean allSameProperty(List<T> list, Function<T, ?> propertyExtractor) {
if (list == null || list.isEmpty()) {
return true;
}
Object firstValue = propertyExtractor.apply(list.get(0));
return list.stream().allMatch(item -> Objects.equals(firstValue, propertyExtractor.apply(item)));
}

public static void main(String[] args) {
// 示例对象
class Example {
private String property;

public Example(String property) {
this.property = property;
}

public String getProperty() {
return property;
}
}

// 示例列表
List<Example> examples = List.of(new Example("value1"), new Example("value1"), new Example("value1"));

// 使用allSameProperty方法检查property属性是否全部相同
boolean allPropertiesTheSame = allSameProperty(examples, Example::getProperty);

System.out.println("All properties are the same: " + allPropertiesTheSame);
}
}

在这个例子中,allSameProperty方法接受一个List和一个属性提取函数(propertyExtractor)。它首先检查列表是否为空或者null,然后提取第一个元素的属性值,并检查列表中的所有其他元素的相应属性是否等于这个值。如果所有属性都相同,它返回true,否则返回false。

标签:java,List,list,public,property,Example,属性
From: https://www.cnblogs.com/shalen/p/18060950

相关文章

  • java 日期去掉T
    importjava.text.ParseException;importjava.text.SimpleDateFormat;importjava.util.Date;publicclassMain{publicstaticvoidmain(String[]args)throwsParseException{StringdateStr="2021-09-30T15:46:37";//原始日期字符串......
  • 【Java】Integer.parseInt()和Integer.valueOf()的区别
    1.Integer.parseInt()和Integer.valueOf()的区别区别1Integer.parseInt()将字符串转换为基本类型int,返回一个int类型值。inti=Integer.parseInt(Strings);Integer.valueOf()将字符串转换为Integer对象,返回一个Integer对象。Integeri=Integer.valueOf(Strings);......
  • Java知识拓展
    publicclasstest3{publicstaticvoidmain(String[]args){//进制二进制0b十进制八进制0十六进制0xinti=10;inti2=010;inti3=0x10;System.out.println(i);System.out.println(i2);System.out.println(i3);System.out.println("=======......
  • JavaScript 常用取整、四舍五入方法汇总
    https://juejin.cn/post/7184257661339172919  2023-01-0314,624阅读2分钟 在JavaScript中,对数值进行四舍五入操作的场景有以下几种:向上取整:ceil向下取整:floor四舍五入:round固定精度:toFixed固定长度:toPrecision取整:parseInt1.向上取整:ceilceil是天花板......
  • java项目的根目录是指
    java项目的根目录是指Java项目的根目录是指在进行Java项目开发的过程中,我们经常会听到“项目的根目录”这个词汇。那么,什么是Java项目的根目录呢?Java项目的根目录指的是项目的主目录,也就是项目文件所在的最顶层目录。在这个目录下,通常会包含项目的源代码、配置文件、资源文件等......
  • Java 使用File对象 读取项目的根目录src下文件
    Java使用File对象读取项目的根目录src下文件在Java中,File对象的路径是相对于你运行Java程序的位置,或者是绝对路径。为了避免读取不到文件异常,你需要确保文件路径是正确的,并且文件确实存在于该路径上。有几种方法可以将文件放置在Java程序可以访问的位置:项目根目录:将logs.txt......
  • Java实现文件断点续传
    文件断点续传代码importjava.io.File;importjava.io.FileNotFoundException;importjava.io.IOException;importjava.io.InputStream;importjava.io.RandomAccessFile;importjava.net.HttpURLConnection;importjava.net.MalformedURLException;importjava.net.URL;......
  • javascript匹配文件名相同然后在后面增加数字的正则表达式
    在一个文件列表中constrenameFileName=(fileName:string)=>{console.log("originfilename",fileName)letfileList=getFileList()//获取文件列表,包含了文件名letcount=-1//记录当前包含了几个文件名fileList.forEach(value=>{letfullFil......
  • Jpackage-制作无需预装Java环境的Jar可执行程序
    JAR包要在预装JRE环境的系统上执行。如果没有预先安装JRE环境,又想直接运行Java程序,该怎么办呢?这篇文章我们会先学习如何将Java程序打包成一个可执行的JavaJAR文件。然后演示如何使用这个JAR文件生成Windows、Linux、MacOS上的可执行程序。我们将使用Java自带......
  • Java工具 - 坐标系WGS-84,GCJ-02,BD-09之间的相互转换
    importjava.util.ArrayList;importjava.util.List;/***地图坐标转换*/publicclassGpsCoordinateUtils{privatestaticfinaldoublePI=3.1415926535897932384626433832795;//privatestaticfinaldoublePI=3.14159265358979324;privatestaticf......