本文目录一览:
java里面的集合框架的set用法应该怎么做
1、Set:它是无序、不重复、该接口中的方法和Collection接口中的方法一致。
继承它的子类有HashSet和TreeSet。
HashSet:底层是哈希表数据结构,不同步的它保证元素的唯一性的方式。
根据元素的两个方法来完成的,一个是HashCode、一个是equals方法,只有当hashCode方法算出哈希值相同时,会再次判断两个元素的equals方法是否为true,如果是true说明两个元素相同,不存储,所以往hashSet集合中存储自定义对象时,要覆盖hashCode,equals方法,通过自定义对象具备的特有数据定义hashCode、equals的具体实现。
treeSet:用于给集合中的额元素按照指定的顺序进行排序,底层是二叉树结构,线程是不同步的。
它保证元素的唯一性,就是通过元素对象的比较方法返回值来确定的,如果为0,则视为两个元素时相同的元素,不存储。
treeset的两种排序方式:
1、让元素自身具备比较功能,就是强制让元素类去实现comparable接口,覆盖compareTo方法,这时元素具备的自然排序,可是如果元素自身不具备比较功能,获取具备的比较功能不是所需要的,这时排序方式就不能用了。
2、让集合自身具备比较功能,需要定义比较器,其实就实现了comparetor接口的子类对象作为参数传递给treeSet集合的构造函数,让treeSet集合一创建就具备了比较功能,该子类必须要覆盖compare方法。
java的set方法
我怎么没明白呢? xx是个类还是个java primitive type?给java 变量赋值用 =
变量 = 值;
就行了啊。
看你写xx.setParentId (‘0’);估计xx是个类?xx有个变量叫parentId? 你想给这个parentId一个值?
你可以在xx类里叫一个set方法
Class XX{
private int parentId;
public void setParentId(int parentId){
this.parentId = parentId;
}
}
外部调用时 xx.setParentId(0);就可以。
当然,如果parentId是字符串,就把int的地方改成String,然后调用xx.setParentId(“0”);
在java中使用“set/get”的方法是什么?
在java中,get和set方法分别是用来获取和设置对象中数据成员值。
列举一些用法:
1、当数据成员是 private 时,只能通过get 和 set方法来设置,因为这些数据成员不能被直接访问。
2、当需要对输入的数据进行变换时使用。如能通过输入任意整数来设置奇偶标志。这时必须对输入数据进行运算后,才能赋值。
java调用set方法更改姓名
java调用set方法更改姓名方法:
1、通过反射调用get/set方法都是通过获取属性的name,然后通过字符串截取将首字母大写,再拼上get/set来做
2、通过fieldName转成字符数组,首个字符-32来避免字符串截取的
我觉得两种方式都可以,但是不知道有没有遇到过,生成的get/set方法并不是已get/set开头的,而是以is开头的,比如boolean类型的成员变量。这个时候我们就需要去判断属性的类型,然后用不同的前缀来拼接get/set方法名。其实,在jdk中已经包含了这样的工具类
原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/243731.html