- 浏览: 450809 次
- 性别:
- 来自: 昆明
文章分类
- 全部博客 (144)
- javase (15)
- javaee (10)
- Struts (6)
- hibernate (10)
- spring (1)
- struts2 (9)
- html+javascript+css (13)
- i love jquery (5)
- AJAX (6)
- 数据库 (8)
- java与XML (5)
- JavaWeb (13)
- ant+xdoclet (1)
- JBPM (2)
- Apache POI (1)
- jfreechart (7)
- ZK (1)
- MyEclipse (1)
- 其它 (5)
- Lucene (3)
- JasperReport (8)
- Linux (1)
- Google+ G+ (0)
- Google+ G+ (0)
- Google+ (0)
- G+ (0)
- 爱折腾 (0)
- Twitter (0)
- youtube (0)
- facebook (0)
- Android hosts文件 换行 window unix (1)
- Objective-c (1)
最新评论
-
云端月影:
mark
UIView总结 -
yuji0228:
[i][i][i][i][i][i][i][i][i][i][ ...
JasperReport学习笔记2-创建简单的报表例子 -
hhb19900618:
你好 运行报错java.net.BindException: ...
Java服务器程序 -
tan8888:
即使是定义了compareTo ,treeSet还是会出现相同 ...
HashSet与TreeSet -
chinalian:
谢谢,总结的很清晰。
Jquery模仿Google Suggest基于js的动态下拉菜单
汽车类
用户类
市场类
最后的测试
最后结论:如果从现在开始玩
要到2010-07-22 07:08:29 资金:174240 总资产:250174240
的时候我将拥有十辆布加迪威龙
public class Car implements Comparable { //汽车的名字 private String carName; //表示每分钟赚的钱 private int money; //表示汽车的单价 private long price; public Car(String carName,int money,long price){ this.carName = carName; this.money = money; this.price = price; } //对汽车的性价比排序 public int compareTo(Object o) { Car car = (Car)o; //money>car.money按money升序排充 int result = money>car.money ? 1:(money == car.money ? 0 : -1); if(result==0){ //如果钱赚的相同就看这辆车的价格是否更加便宜 result = price>car.price ? 1:(price == car.price ? 0 : -1); } return result; } public String getCarName() { return carName; } public int getMoney() { return money; } public long getPrice() { return price; } }
用户类
public class LangHuA { //用户现在剩的钱 private long totalMoney; //用户现在的总钱数包括车也算在内 private long totalMoneyWithCar; private Market market; //存放我的车 private ArrayList<Car> myCarList; //市场的车 private TreeSet<Car> carTreeSet; private static LangHuA langhua; public LangHuA(){ myCarList = new ArrayList<Car>(); totalMoney = 16000L; market = Market.getIntence(); carTreeSet = market.getCarList(); totalMoneyWithCar = 16000L; } //是否买车 public boolean isBuyCar(){ //如果车的数量等于10就不能再买车了 if(myCarList.size()==10){ return false; } //是否买的起车 return Market.canYouBuyIt(this.totalMoney); } //买一辆车 public void buyCar(){ myCarList.add(carTreeSet.first()); totalMoney = totalMoney - carTreeSet.first().getPrice(); } //是否以旧换新车 public boolean isChangeCar(){ if(myCarList.size()==10){ //是否能以旧换新 boolean b = false; Car car = myCarList.get(0); Car buycar = null; Iterator<Car> it = market.getIterator(); while(it.hasNext()){ buycar = (Car) it.next(); if((buycar.getPrice()<totalMoney+car.getPrice())&&(buycar.getMoney()>car.getMoney())){ myCarList.set(0, buycar); totalMoney = totalMoney + car.getPrice() - buycar.getPrice(); b = true; Collections.sort(myCarList); break; } } return b; } return false; } //每当12个小时之后结账 public void Checkout(){ Iterator<Car> it = myCarList.iterator(); while(it.hasNext()){ Car car = (Car) it.next(); totalMoneyWithCar = totalMoneyWithCar + car.getMoney()*60L*12L; totalMoney = totalMoney + car.getMoney()*60L*12L; } } public long getTotalMoney() { return totalMoney; } public long getTotalMoneyWithCar() { return totalMoneyWithCar; } public String toString(){ StringBuilder sb = new StringBuilder(); sb.append("资金:"+this.totalMoney); sb.append(" 总资产:"+this.totalMoneyWithCar); sb.append(" 车总数:"+this.myCarList.size()); sb.append(" 所拥有的车:"); Iterator it = myCarList.iterator(); while(it.hasNext()){ sb.append(((Car)it.next()).getCarName()+" "); } return sb.toString(); } }
市场类
package com.langhua.qqgame; import java.util.Iterator; import java.util.TreeSet; public class Market { //保存汽车 private static TreeSet<Car> carList; private static Market market; private Market(){ carList = new TreeSet<Car>(); //代步车 carList.add(new Car("二手奥拓", 5, 16000L)); carList.add(new Car("江南奥拓",5,25000L)); carList.add(new Car("夏利",6,32000L)); carList.add(new Car("奇瑞QQ",7,36000L)); carList.add(new Car("spark乐驰",8,45800L)); carList.add(new Car("吉利自由舰",9,48000L)); //普通私家车 carList.add(new Car("富康",10,62000L)); carList.add(new Car("标志206",11,78000L)); carList.add(new Car("雪铁龙C2",12,79000L)); carList.add(new Car("名爵3SW",12,79800L)); carList.add(new Car("桑塔纳",13,80000L)); carList.add(new Car("POLO",13,91000L)); carList.add(new Car("福田欧马可",13,98800L)); carList.add(new Car("别克凯越",14,100000L)); //精致私家车 carList.add(new Car("标致307",15,110000L)); carList.add(new Car("宝来",15,116000L)); carList.add(new Car("赛拉图",15,127800L)); carList.add(new Car("福特福克斯",15,128000L)); carList.add(new Car("飞度",15,129800L)); carList.add(new Car("卡罗拉",15,132000L)); carList.add(new Car("速腾",15,138000L)); carList.add(new Car("斯柯达明锐",15,139000L)); carList.add(new Car("本田CIVIC",15,140000L)); carList.add(new Car("骐达",15,149800L)); //高级私家车 carList.add(new Car("新毕加索",16,157800L)); carList.add(new Car("S-MAX",18,219800L)); carList.add(new Car("Mini Cooper",20,320000L)); carList.add(new Car("奥迪A6",24,620000L)); carList.add(new Car("宝马730",26,1080000L)); carList.add(new Car("保时捷911",28,1500000L)); carList.add(new Car("玛莎拉蒂",30,1790000L)); carList.add(new Car("阿斯顿马丁",32,3620000L)); carList.add(new Car("迈巴赫62",34,6180000L)); carList.add(new Car("帕加尼",36,12990000L)); carList.add(new Car("雅致728",38,13880000L)); carList.add(new Car("布加迪威龙",40,25000000L)); carList.add(new Car("布加迪威航",50,43000000L)); } //获得市场上最便宜的车 public static Car getCheapestCar(){ return carList.first(); } //根据用户手上的钱看能不能买下一辆书 public static boolean canYouBuyIt(long price){ if(price >= Market.getCheapestCar().getPrice()){ return true; } return false; } public static Market getIntence(){ if(market==null){ market = new Market(); } return market; } public TreeSet<Car> getCarList() { return carList; } public Iterator<Car> getIterator(){ TreeSet<Car> treeSet = market.getCarList(); Iterator<Car> it = treeSet.iterator(); return it; } }
最后的测试
public class ShowTime { public static void main(String[] args) { Market market = Market.getIntence(); LangHuA langhua = new LangHuA(); Date date = new Date(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); long times = date.getTime(); int i = 0; while(i<1030){ //先结一次账 langhua.Checkout(); //看否能买一辆车 while(langhua.isBuyCar()){ langhua.buyCar(); } //是否能以旧换新 while(langhua.isChangeCar()){ } date = new Date(times+i*60L*60L*12L*1000L); System.out.println("时间:"+sdf.format(date)+" "+langhua); i++; } } }
最后结论:如果从现在开始玩
要到2010-07-22 07:08:29 资金:174240 总资产:250174240
的时候我将拥有十辆布加迪威龙
- car.rar (12.5 KB)
- 下载次数: 26
发表评论
-
class一个方法
2009-12-17 12:47 1048System.out.println(HSSFWorkbook ... -
从一万个数中找到刚拿掉的数的算法
2009-07-29 11:04 1151public class XorTest { ... -
BigDecimal舍入模式(Rounding mode)
2009-07-21 14:19 2582ROUND_CEILING Rounding mode to ... -
JavaExcelAPI操作Excel
2009-05-04 21:02 10143jxl是一个*国人写的java操作excel的工具, 在开源世 ... -
java程序中如何给图片加水印
2009-04-22 13:41 1931package com.langhua.ImageUtils; ... -
对ThreadLocal设计模式的理解
2009-03-15 18:43 2472首先,ThreadLocal 不是用 ... -
读取Properties文件和操作的方法
2009-03-15 14:20 18641。使用java.util.Properties类的loa ... -
JDBC连结池程序
2009-02-16 03:33 1202这个是连结池 import java ... -
HashMap TreeMap的区别
2009-02-08 15:40 2632public class HashMapTest { ... -
HashSet与TreeSet
2009-02-08 14:45 2231public class HashSetTest { ... -
Comparable,Comparator,compare,compareTo的区别和应用
2009-02-08 11:53 3335public class ArrayTest { pu ... -
Java I/O里面的一些类的总结
2009-02-07 00:44 1706import java.io.Closeable; im ... -
今天看JDK的一些原码,头都大了。。。
2009-02-04 20:11 1324public interface Iterator< ... -
静态数据的初始化
2009-01-29 20:36 1284class Bowl { Bowl(int marker) ...
相关推荐
【C# QQ抢车位】是基于C#编程语言开发的一款模拟QQ空间经典游戏"抢车位"的应用。在这款游戏中,用户可以通过编写特定的程序,实现一键自动更换车辆的功能,极大地提高了游戏的便捷性和趣味性。下面我们将深入探讨C#...
《C#实现的仿QQ单机版抢车位游戏详解》 C#作为一种高效且功能强大的编程语言,广泛应用于Windows桌面应用开发,其中就包括各种趣味性的游戏。本篇将深入探讨如何利用C#的Window Forms技术,开发一款有趣的单机版...
QQ抢车位视频教程
《抢车位模拟推算器V1.54绿色版》是一款专为《抢车位》游戏设计的应用软件,旨在帮助玩家在游戏中更加高效地规划策略,提升游戏体验。此工具结合了多种功能,包括达成时间推算、最优化换车路线展示以及手动模拟买车...
【抢车位小游戏】是一款简单的休闲娱乐程序,源自开发者在制作迷你QQ时期的创意之作。通过点击“CarGame.exe”即可启动游戏,为用户带来轻松有趣的停车挑战。这款游戏虽然规模不大,但包含了基本的游戏逻辑和交互...
本项目名为“山寨版QQ抢车位”,是基于C++编程语言实现的一个简化版本,旨在模拟游戏的基本功能,包括车辆选择、停车操作以及金钱的增长。尽管开发者谦虚地表示做得不够完善,但其背后蕴含的编程原理和设计思路依然...
《抢车位游戏》是一款简单的编程实现的小游戏,它主要展示了基础的编程逻辑和算法应用。在这款游戏中,玩家需要在有限的停车位上找到一个空位停放自己的车,同时避免与其他车辆发生碰撞。这款游戏的设计和实现涉及到...
【标题】:“自己瞎写的仿QQ程序” 这个标题暗示了一个个人项目,可能是一个初学者或者爱好者尝试模仿腾讯QQ的功能而创建的一个简易通讯软件。QQ是中国非常流行的一款即时通讯工具,它提供了聊天、文件传输、群组...
QQ抢登器 抢登QQ号,不用手动自动登
QQ相册快快下载是一款专为用户设计的工具,旨在帮助用户轻松、快速地批量下载QQ相册中的图片。在日常生活中,QQ相册作为腾讯QQ的一项重要功能,让用户能够在线存储、分享个人照片和相册,但在某些情况下,用户可能...
QQ抢登器-当你的密码被盗,是不是有人在跟你抢登,是不是因为点的手酸而放弃了心爱的QQ号,如果这样的话,那么天网中国的这个软件可以帮到你和黑客抢自己心爱的QQ号,切忌用于非法用途。 软件功能:利用窗口...
QQ升级加速工具是一种专门针对腾讯QQ设计的辅助软件,它主要功能是帮助用户更快地积累QQ等级。在QQ等级系统中,用户通过在线时长、完成特定任务等方式获得经验值,进而提升自己的QQ等级。QQ升级加速工具从QQ管家这个...
2009年,QQ推出了挂QQ快速升级的功能,这使得用户无需长时间在线就可以快速提升自己的QQ等级。这一功能的出现,对于那些忙碌无法长时间在线,但仍希望保持较高QQ等级的用户来说,无疑是一大福音。 挂QQ快速升级软件...
QQ加速升级王就是针对这一机制而设计的,它提供了一些便捷的功能,帮助用户更有效地管理自己的QQ在线时间,并自动完成部分任务,以达到加速升级的目的。 在使用QQ加速升级王时,用户需要注意以下几点关键知识点: ...
虽然早期的QQ可能采用了其他编程语言,但这里提到的"QQ用Java写的"指的是QQ的部分服务或后台系统可能采用Java语言进行开发。Java作为一种强类型、面向对象的编程语言,因其跨平台性、稳定性以及丰富的库支持,被广泛...
QQ号码登录不上去解决办法,提示QQ号码需要激活无法登录的解决办法
《自己写的QQ客户端2007》是一款基于QQ通信协议的个人开发项目,它为学习和理解QQ客户端的实现提供了宝贵的资源。这个项目的核心在于模拟QQ的登录过程,包括理解和实现QQ的网络通信协议,以及涉及到的数据加密技术,...
QQ升级王是一款旨在帮助用户快速提升QQ等级的工具,它提供了4.8倍的加速效果,使得普通用户也能享受到类似QQ会员的升级速度。通过这款软件,用户可以在一天内显著增加自己的QQ活跃度,从而更快地提升QQ等级。同时,...
标题“微信QQ自动抢红包黑屏也抢啊”和描述“微信 qq 抢红包 锁屏钱 挂机 口令红包”涉及到的是在移动设备上利用自动化工具进行微信和QQ红包的抢夺,即使设备处于锁屏或者挂机状态也能自动操作。这个主题主要涵盖...