Java ObjectStreamField compareTo()方法与示例

ObjectStreamField类compareTo()方法

  • compareTo()方法在java.io包中可用。

  • compareTo()方法用于将此ObjectStreamField与给定对象(ob)比较。

  • compareTo()方法是一种非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。

  • 比较两个对象时,compareTo()方法不会引发异常。

语法:

    public int compareTo(Object ob);

参数:

  • 对象ob –表示要与此ObjectStreamField对象进行比较的对象。

返回值:

方法的返回类型为int,它可以根据以下给出的值返回三个值中的任何一个,

  • 当此对象小于给定对象时,它将返回负整数(-1)。

  • 当此对象大于给定对象时,它将返回正整数(1)。

  • 当此对象等于给定对象时,它将返回正整数。

示例

//Java程序演示示例 
//int compareTo(Object ob)方法的 
//的ObjectStreamField-

import java.io.*;

public class CompareOfOSF {
 public static void main(String[] args) {
  //实例化两个ObjectStreamClass
  //双
  ObjectStreamClass o_sc1 = ObjectStreamClass.lookupAny(Long.class);
  ObjectStreamClass o_sc2 = ObjectStreamClass.lookupAny(Double.class);

  //通过使用getField()方法是获取字段
  //Double和Long类的值
  ObjectStreamField field1 = o_sc1.getField("value");
  ObjectStreamField field2 = o_sc2.getField("value");

  int compare = field1.compareTo(field2);
  System.out.println("field1.compareTo(field2): " + compare);
 }
}

输出结果

field1.compareTo(field2): 0