关于javaset代码实现的信息

java中怎么往集合类set里添加数据??

两种向Set中添加元素的方法,第一种是使用add()方法,每次添加一个元素到set中,当集合中不存在相同元素时将添加到集合中,并返回true,当集合中存在元素时,返回false。代码如下:

创新互联专注于莒县企业网站建设,响应式网站设计,商城开发。莒县网站建设公司,为莒县等地区提供建站服务。全流程定制制作,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务

SetString sets = new HashSet();

sets.add("String");

System.out.println(sets.add("Tree"));

System.out.println(sets.add("String"));

ListString lists = new LinkedList();

lists.add("test");

lists.add("test");

lists.add("one");

System.out.println(sets.addAll(lists));

还有一个是向集合中批量添加元素的方法addAll(),这个方法的入参是Colletion。上述代码执行结果如下:

扩展知识

Set集合可以知道某物是否已近存在于集合中,不会存储重复的元素,注重独一无二的性质,用于存储无序(存入和取出的顺序不一定相同)元素,值不能重复。可以很好地作为排重时使用的数据结构,但要注意集合内部数据一般情况没有顺序。常用的set有HashSet和TreeSet。

TreeSet是JAVA中集合的一种,TreeSet 是一个有序的集合,它的作用是提供有序的Set集合。它继承于AbstractSet抽象类,实现了NavigableSetE,Cloneable,java.io.Serializable接口。一种基于TreeMap的NavigableSet实现,支持2种排序方式:自然排序 或者 根据创建TreeSet 时提供的 Comparator 进行排序。

java中set排序怎么实现

你好,java中专门的带有顺序的set类是TreeSet,比如对String类的TreeSet使用方法是

TreeSetString set=new TreeSetString(new Comparator(){

@Override

public int compare(Object arg0, Object arg1) {

return 0;

}

});

如何利用Java代码实现List集合转换成Set集合

Set和List都是接口,都实现了Collection接口和Iterable接口。

两者的转换不常进行,通过集合的 addAll() 方法可以实现

/**

* List和Set的转化(Set转化成List)

*/

public static T ListT SetToList(SetT set) {

ListT list = new ArrayList();

list.addAll(set);// 转换核心

return list;

}

java 怎么设计一个set类 然后new两个set对象 进行交集 并集 求代码

import java.util.Iterator;

import java.util.Set;

import java.util.TreeSet;

public class MySet {

public static void main(String[] args) {

Set set1 = new TreeSet();

set1.add("aa");

set1.add("bb");

set1.add("CC");

Set set2 = new TreeSet();

set2.add("aa");

set2.add("eeff");

Set unionSet = MySet.union(set1, set2);

Set intersectionSet = MySet.intersection(set1, set2);

printSet(unionSet);

System.out.println("-----------------------------");

printSet(intersectionSet);

}

private static void printSet(Set set) {

Iterator ite = set.iterator();

while(ite.hasNext()){

System.out.println(ite.next().toString());

}

}

public static Set union(Set set1, Set set2){

Set set = new TreeSet();

set.addAll(set1);

set.addAll(set2);

return set;

}

public static Set intersection(Set set1, Set set2){

Set set = new TreeSet();

if(set1.size() set2.size()){

set.addAll(set2);

}else{

set.addAll(set1);

}

Iterator ite = set.iterator();

while(ite.hasNext()){

Object obj = ite.next();

if(!(set1.contains(obj) set2.contains(obj))){

set.remove(obj);

}

}

return set;

}

}

--------------------------

CC

aa

bb

eeff

-----------------------------

aa

Java中用set 和map实现这段代码,谢谢!

1、面向接口(DAO)编程,接口的实现。

构建User.java实体类,构建UserImpl.java类,实现UserDao接口,构建MapDal.java,模拟数据库,Main.java模拟UI,UI只调用UserImpl,UserImpl调用MapDal。

main.java

package baidu.zhidao;

import java.util.*;

/**

* Main 主方法

* @author bufei

*

*/

public class Main {

public static void main(String[] args) {

int userNum = 9;

// 定义UserList

ListUser list = new ArrayListUser();

for (int i = 0; i  userNum; i++) {

User user = new User();

user.setPassWord("passWord" + i);

user.setUserName("userName" + i);

list.add(user);

}

// 实例化UserImpl

UserImpl userImpl = new UserImpl(list);

// 用户 张三 是否存在

String userName = "张三";

String passWord = "passWord";

User user = new User();

user.setUserName(userName);

user.setPassWord(passWord);

System.out.println("- - - baiduDemo - - -");

// 1、isExist(user)

System.out.println("查找用户 " + userName + "...");

if (userImpl.isExist(user)) {

System.out.println(userName + " 存在!");

} else {

System.out.println(userName + " 不存在!");

}

// 2、addUser

System.out.println("添加用户 " + userName + ",psw= " + passWord + " ...");

userImpl.addUser(user);

// 3、changePassword(userName)

System.out.println("修改密码...");

passWord = "zhangsanpasword";

if (userImpl.changePassword(userName, passWord)) {

System.out.println("修改成功!");

} else {

System.out.println("用户不存在!");

}

//  4 selectAll()

list = userImpl.selectAll();

System.out.println("获取全部User:");

for (User userItem : list) {

System.out.println(userItem.getUserName() + "," + userItem.getPassWord());

}

}

}

UserImpl.java

package baidu.zhidao;

import java.util.*;

/**

* UserDao接口实现

* @author bufei

*

*/

public class UserImpl implements UserDao {

private MapDal mapDal;

/**

* 构造器,初始化Map数据库

*/

public UserImpl(ListUser list) {

mapDal = new MapDal(list);

}

/**

* 1.判断某个user是否存在

* @param user 用户对象

* @return 返回true/false用户是否存在

*/

public boolean isExist(User user) {

boolean rs = false;

rs = mapDal.isExist(user);

return rs;

}

/**

* 2.添加User

* 题目所给void 返回类型不合理

* @param user

*

* */

public void addUser(User user) {

if (mapDal.addUser(user)) {

System.out.println("添加完成!");

} else {

System.out.println("添加失败!");

}

}

/**

* 3.根据username修改password

* @param username

* @param password

* @return 成功与否

* */

public boolean changePassword(String userName, String password) {

boolean rs = false;

User user = new User();

user.setUserName(userName);

user.setPassWord(password);

rs = mapDal.changePassword(user);

return rs;

}

/**

* 根据用户对象修改密码

* @param user

* @return

*/

public boolean changePassword(User user) {

return mapDal.changePassword(user);

}

/**

* 4.得到所有的User,用List封装

* @return 从数据库查询到所有的User

* */

public ListUser selectAll() {

return mapDal.selectAll();

}

}

MapDal.java

package baidu.zhidao;

import java.util.*;

/**

* MapDml 用map模拟数据库,初始化生成一些User

* 单例模式,避免数据不同步

* @author bufei

*

*/

public class MapDal {

/** list中存map,实在绕得很,直接存User也是可以 */

public static ListMapString, String userMapList = new ArrayListMapString, String();

/**

* 初始化,有参构造器

* 构造Map  map,存储全部的userName,passWord,模拟数据库

*

*/

public MapDal(ListUser list) {

for (User user : list) {

Map userMap = new HashMapString, String();

userMap.put(user.getUserName(), user.getPassWord());

userMapList.add(userMap);

}

}

/**

* 无参构造器

* */

public MapDal() {

}

/**

*

* @param user

* @return

*/

public boolean isExist(User user) {

boolean rs = false;

//遍历userMapList 查找用户是否存在

for (MapString, String map : userMapList) {

// 找到该map

if (map.get(user.getUserName()) != null) {

rs = true;

}

}

return rs;

}

/**

* addUser,userName已存在则无法加入

* @param user

* @return boolean

*/

public boolean addUser(User user) {

boolean rs = false;

//遍历userMapList 查找用户是否存在

for (MapString, String map : userMapList) {

// 找到该map,已经存在,无法添加

if (map.get(user.getUserName()) != null) {

return rs;

}

}

if (!rs) {

MapString, String userMap = new HashMapString, String(8);

userMap.put(user.getUserName(), user.getPassWord());

userMapList.add(userMap);

rs = true;

}

return rs;

}

/**

* deleteUser

* @return

*/

public boolean deleteUser() {

boolean rs = false;

return rs;

}

/**

* changePassword

* @param user

* @return

*/

public boolean changePassword(User user) {

boolean rs = false;

// 定义遍历索引

int i = 0;

//遍历userMapList 查找用户是否存在

for (MapString, String map : userMapList) {

// 找到该map,remove,再次存入新的

if (map.get(user.getUserName())!=null) {

userMapList.remove(i);

//hashmap 初试默认值 0.75-16

Map userMap = new HashMapString, String(8);

userMap.put(user.getUserName(), user.getPassWord());

userMapList.add(userMap);

rs = true;

}

i++;

}

return rs;

}

/**

* selectAll()

*

* @return 返回全体user

*/

public ListUser selectAll() {

ListUser list = new ArrayListUser();

//遍历map

for (MapString, String userMap : userMapList) {

User user = new User();

//map访问需要使用Map.Entry

//entry 需要Set.iterator().next()

Set entriSet = userMap.entrySet();

IteratorMap.EntryString, String iterator = entriSet.iterator();

if (iterator.hasNext()) {

// 此时entry 是 Object

Map.EntryString, String entry = iterator.next();

user.setUserName(entry.getKey().toString());

user.setPassWord(entry.getValue().toString());

list.add(user);

}

}

return list;

}

}

2、运行效果


网页名称:关于javaset代码实现的信息
文章网址:http://azwzsj.com/article/dsegpjp.html