Java集合框架小应用之扑克牌小游戏学习了Java集合框架之后,我写了一个扑克牌小游戏来巩固知识。学习之余的练习之作,有不足之处还得多多指教了~(*/ω\*)扑克牌小游戏背景:1. 创建一副扑克牌,不考虑大小王 包括四种花色:黑桃、红桃、梅花、方片 十三种点数:2-10,J Q K A2. 创建两名玩家,玩家至少要有ID、姓名、手牌等属性,手牌为扑克牌的集合3. 洗牌,将之前创建的扑克牌顺序打乱(说明是有序的)4. 发牌,将洗牌之后...
本文主要是介绍一下java集合中的比较重要的Set接口下的可实现类TreeSet TreeSet类,底层用二叉树的数据结构 * 集合中以有序的方式插入和抽取元素。 * 添加到TreeSet中的元素必须是可以排序的 * 保证数据的唯一性: * 第一种:让添加的类自身具有可比较性, * 实现Comparable接口中的CompareTo()方法 首先建立一个添加的类型,如下定义,让元素自身具备可比较性 * 添加类中实...
最近接触了一个类似于代码生成工具的活。思路是,通过java的反射机制得到类的字段和字段类型,从而可以创建一个map集合存储表名(由类名决定的特殊结构字符串),表字段(由类变量确定),表字段类型(由变量类型确定),DAO中通过将map传递给mybatis,在mybatis 中调用存储过程生成表。1,在数据库中添加一个存储过程,如下sp_createTableBEGINDECLARE sql_text VARCHAR(2000); DROPTABLEIFEXISTS p_name;SET sql_text=CONCAT(‘C...
按 ctrl 点击查看源代码;一、equals方法:1.用于比较两个对象是否相同。2.Objec 类中,若两边是引用数据类型,比较的是两个对象的内存地址。3.Objec 类中,若两边是数值类型,比较的是两个对象的内容。4.使用的是 == 比较运算符。5.equals 重写:代码:publicclass Person {private String name;privateint age;public Person(){super();}public Person(String name, int age) {super();this.name = name;this.age = age;}//重写...
本文是继承上文的基础上进行的讨论,建议读者先阅读http://www.cnblogs.com/xuezhezlr/p/9097137.html和https://www.cnblogs.com/xuezhezlr/p/9096063.html后在进行本文的了解,本文旨在对上文中的数据驱动在实际运用中的问题进行解答 实际使用时,读者会发现原有的框架在一些场景中貌似运用的不是太好,比如订单完成接口,这时就要用到关键字驱动的方式,本文的关键字驱动与正规的有一定出入,不过还是从最正统的关键字驱动的思...
wait 和notify 在 synchronized 包含的范围中 必须与synchronized 使用同一个对象可以在一个锁中设定 多个 condition 来执行等待的方法,这样的好处就是能实现多个方法之间的等待执行。例如下面例子 的两个condition class BoundedBuffer { final Lock lock = new ReentrantLock(); final Condition notFull = lock.newCondition(); //使用condition 来代替 wait 和 notify final Condition notEmpty = lock.newCondition()...
一、六个基本质量属性可修改性 易用性 安全性 可测试性性能 可用性 二、分析具体功能模块的MVC设计实现 三、在实际项目中的具体应用或分析MVC设计模式在具体网站中的应用 原文:http://www.cnblogs.com/3066405538a/p/6822954.html
由于java里面有一些东西比c/c++方便(尤其是大数据高精度问题,备受广大ACMer欢迎),所以就可以灵活运用这三种来实现编程,下面是我自己在各种大牛那里总结了一些这里指的java速成,只限于java语法,包括输入输出,运算处理,字符串和高精度的处理,进制之间的转换等,能解决OJ上的一些高精度题目。1. 输入:格式为:Scanner cin = new Scanner (new BufferedInputStream(System.in));或者、Scanner cin = new Scanner (System.in...
package com.xinboedu.www.test;/*** 功能概要:* * @author linbingwen* @since 2016年6月11日*/publicclass ThreadGroupDemo {publicstaticvoid main(String[] args) {ThreadGroup threadGroup1 =// 这是匿名类写法new ThreadGroup("group1") {// 继承ThreadGroup并重新定义以下方法// 在线程成员抛出unchecked exception// 会执行此方法publicvoid uncaughtException(Thread t, Throwable e) {System.out.println(t.getName() +...
package com.test.collection;import java.util.HashMap;
import java.util.Hashtable;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;//Map的基本应用publicclass MapTest {/*** @param args*/publicstaticvoid main(String[] args) {/* * HashMap KEY值不允许重复,线程不安全,效率高*/Map map=new HashMap();map.put(1, "张三");map.put(2, "李四");map.put(3, "王五");map.remove(2);System.out.prin...
1.日历相关类1.1 日历类 CalendarWrapperpackage com.xkzhangsan.time.calendar;import java.io.Serializable;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;/*** 日历* * @ClassName: CalendarWrapper* @Description: CalendarWrapper* @author xkzhangsan* @date 2020年03月18日*/publicclass CalendarWrapper implements Serializable{privatestaticfinallong serialVersionUI...
新建了一个类Hello:代码: 第一次运行报错: 点击关闭该类的界面时出现: 点击是,然后再次打开,可以正确执行,结果为: 这是为什么.... 原文:http://www.cnblogs.com/ssyh/p/7859790.html
import java.io.FileOutputStream;import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFFont;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;public class TestExcelPoiPrint{public static void main(String[] args) throws E...
先决条件开始之前,请安装 Service Fabric SDK、Azure CLI,并在 Linux 开发环境中设置开发群集。 如果使用 Mac OS X,则可使用 Vagrant 在虚拟机中设置 Linux 开发环境。此外还需配置 Azure CLI 2.0(推荐)或 XPlat CLI,以便部署应用程序。创建应用程序Service Fabric 应用程序包含一个或多个服务,每个服务都在提供应用程序功能时具有特定角色。 适用于 Linux 的 Service Fabric SDK 包含 Yeoman 生成器,使用它可以轻松创建第...
Java中有那么一些类,是以Atomic开头的。这一系列的类我们称之为原子操作类。以最简单的类AtomicInteger为例。它相当于一个int变量,我们执行Int的 i++ 的时候并不是一个原子操作。而使用AtomicInteger的incrementAndGet却能保证原子操作。具体的类如下:闲话不多说,还是用实例说话吧。问题:现在有2个线程,分别将全局整型变量 i 进行加1。每个线程执行5000次。按照传统的int使用方式,代码如下:privatestaticint m = 0;publics...