java程序语言Set集合方法演示

java程序语言Set集合方法演示

import java.util.Collection;
import java.util.Comparator;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
public class HashSetDemos
{

	public static void main(String[] args)
	{
		// 新建一个Set类的集合
		Set   st = new HashSet();
		st.add("abc1");
		st.add("abc2");
		st.add("abc1");
		st.add("abc2");
		//输出结果只会有 abc1  和abc2  不允许元素重复
		Iterator it = st.iterator();
		while(it.hasNext())
		{
			System.out.println(it.next());
		}
		st.removeAll(st);
		st.add(new Studenti("lisi",23));
		st.add(new Studenti("lisi",24));
		st.add(new Studenti("lisan",22));
		st.add(new Studenti("lisan",20));
		Iterator its = st.iterator();
		while(its.hasNext())
		{
			Studenti s = (Studenti) its.next();
			System.out.println(s.getName()+"  "+s.getAge());
		}
	}
}
class Studenti
{
	private String name;
	private int age;
	Studenti(String name ,int age)
	{
		this.name=name;
		this.age = age;
	}
	public int getAge()
	{
		return age;

	}
	public String getName()
	{
		return name;

	}
	public String toString()
	{
		return "the student name : +name "+"  and  age is : "+ age;

	}
	public int hashCode()
	{
		return name.hashCode()+age*10;

	}
	public boolean equals(Object obj)
	{
		 if(this == obj)
             return true ;//同一个对象放两次,直接返回true

       if(!(obj instanceof Studenti))
             throw new ClassCastException("类型错误");

       Studenti p = (Studenti)obj;

       return this .name.equals(p.name) && this.age == p.age;
	}
	}

运行程序:

时间: 2024-10-12 15:18:38

java程序语言Set集合方法演示的相关文章

Java程序入口:main()方法讲解

Java程序的入口---main()方法的签名为:public static void main(String[] args) {...} ,其中, ? public修饰符:Java类由JVM调用,为了让JVM可以自由调用这个main()方法,所以使用public修饰符把这个方法暴露出来. ? static修饰符:JVM调用这个主方法时,不会先创建该主类的对象,然后通过对象来调用该主方法.JVM直接通过该类来调用主方法,因此使用static修饰该主方法. ? void返回值:因为主方法被JVM调

Java程序语言的后门-反射机制

在文章JAVA设计模式-动态代理(Proxy)示例及说明和JAVA设计模式-动态代理(Proxy)源码分析都提到了反射这个概念. // 通过反射机制,通知力宏做事情method.invoke(object, args);// 通过反射,将h作为参数,实例化代理类,返回代理类实例.return cons.newInstance(new Object[]{h});而且在 // 将接口类对象数组clone一份.final Class<?>[] intfs = interfaces.clone();也

黑马程序员——java——Date类的常见方法演示

Date 中的常用方法演示 import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class DateDemos { public static void main(String[] args) throws Exception { // 获取系统当前的时间的毫秒值 long l = System.

简述java程序中的main方法

简述main方法: 在java语言程序编写时都会涉及到一个main方法,它的格式为: public static void main(String[] args)(一般必须这么定义,这是java规范) 在这里修饰符public和static的顺序是可以互换的.但是根据java的惯例,一般把public放在前面,后面的参数名args是不固定的,开发者可以任意命名. 1) public关键字指可以其他类可以访问这个函数. 2) static 关键字指静态函数,调用时不会实例化(即不能创建对象)(静态

Java程序执行时间的简单方法

long startTime=System.currentTimeMillis(); //获取开始时间 doSomeThing(); //测试的代码段 long endTime=System.currentTimeMillis(); //获取结束时间 System.out.println("程序运行时间: "+(end-start)+"ms");

编写跨平台Java程序注意事项

使用Java语言编写应用程序最大的优点在于“一次编译,处处运行”,然而这并不是说所有的Java程序都具有跨平台的特性,事实上,相当一部分的Java程序是不能在别的操作系统上正确运行的,那么如何才能编写一个真正的跨平台的Java程序呢?下面是在编写跨平台的Java程序是需要注意的一些事情: 1. 编写Java跨平台应用程序时,你可以选择JDK1.0,1.1,1.2或支持它们的GUI开发工具如:Jbuilder,Visual Age for Java 等等,但是必须注意你的Java程序只能使用Jav

一个简单的Java程序例子以及其几种注释

在说道主题前,先来啰嗦两句,o()︿︶)o 唉,不说两句心里就有个疙瘩,也许这就是所谓的强迫症吧,好了说说我想啰嗦的,其实也就是这样子的,关于Java开发工具箱的下载以及环境的配置.Java的下载进入到oracle官网下载即可(具体的步骤就不赘述了如今网络资源丰富你懂得),下载好之后然后开始安装,根据安装过程中的说明进行下一步直至完成即可,等等不要激动,还没完了,要开始配置Java的开发环境(说明下我这说的只是正对window操作系统的),其实也很简单,就是对着桌面上的”我的电脑”鼠标右键带点击

如何保护java程序不被反编译

Java是一种 跨平台的.解释型语言 Java 源代码编译中间“字节码”存储于class文件中.Class文件是一种字节码形式的中间代码,该字节码中包括了很多源代码的信息,例如变量名.方法名 等.因此,Java中间代码的反编译就变得非常容易.目前市场上有许多免费的.商用的反编译软件,都能够生成高质量的反编译后的源代码.所以,对开发人员 来说,如何保护Java程序就变成了一个非常重要的挑战.下面我们就结合实例讨论 保护Java程序的基本方法然后对代码混淆问题进行深入研究,最后结合一个实际的应用程序

JAVA 访问MySQL数据库(使用方法及测试)

最近我们的JAVA课程讲到数据库,老师一直强调搭建数据库环境(JDBC)的重要性,刚好我的电脑前段时间重装过,也可以趁着这个机会再来回顾一遍JDBC的搭建. 说明:本文使用的JDBC框架是基于JAVA SE 1.8 & MySQL & Eclipse 工具下载: MySQL V5.5(x64) 64位 MySQL V5.5(x86) 32位 要根据你电脑的情况选择相应的MySQL版本.我的电脑是64位,所以本篇文章是使用64位讲解的,如果有同学在使用32位版本的时候出现问题的可以随时联系我