|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
在性能方面,在windows平台下,.net可能是占强项,要是把.net放在sun开发的操作系统上去运行呢?根本就运行不了,.net对其它操作系统的支持也很弱,性能也可能比不上java。
importjava.util.*;
/***供应一个保留参数的容器,用来给那些参数多、可选参数多、参数易变的办法供应参数读取才能。*间接利用Map等类关于数据范例处置不是便利。本类供应经常使用数据范例的读取办法。用法示例:<br>*port=args.get("port",8080);<br>*放进Map中的port值能够是"8443"或newInteger(8443)或其他任何范例,只需toString()*可以剖析出一个整数。*@authorsunlen*@version1.0*/publicclassArgs{/**一个常量空参数表。用于传送空参数,该参数列表已锁定,不克不及修正。*/publicstaticfinalArgsEMPTY=newArgs().lock();
/**参数列表是不是已锁定,锁定后的参数列表将只读。*/booleanlocked;
/**Map保留的参数。*/Mapargs;
/**创立空参数列表。*/publicArgs(){this(newHashMap());}
/***用Map创立参数。*@paramtheArgs保留参数的Map对象。*/publicArgs(MaptheArgs){if(theArgs==null){thrownewNullPointerException("argumentisnull");}args=theArgs;}
/***获得字符串参数的办法。*@paramkey参数名。*@paramdef参数值。*/publicStringget(Stringkey,Stringdef){try{returnargs.get(key).toString();}catch(Exceptionex){returndef;}}
/***获得整数参数的办法。*@paramkey参数名。*@paramdef参数值。*/publicintget(Stringkey,intdef){try{returnInteger.parseInt(args.get(key).toString());}catch(Exceptionex){returndef;}}
/***获得长整数参数的办法。*@paramkey参数名。*@paramdef参数值。*/publiclongget(Stringkey,longdef){try{returnLong.parseLong(args.get(key).toString());}catch(Exceptionex){returndef;}}
/***获得浮点数参数的办法。*@paramkey参数名。*@paramdef参数值。*/publicfloatget(Stringkey,floatdef){try{returnFloat.parseFloat(args.get(key).toString());}catch(Exceptionex){returndef;}}
/***获得布尔参数的办法。只要"true"剖析成true其他剖析成false。*@paramkey参数名。*@paramdef参数值。*/publicbooleanget(Stringkey,booleandef){try{return("true".equals(args.get(key)));}catch(Exceptionex){returndef;}}
/***获得原始对象范例。*@paramkey参数名。*@paramdef参数缺省值。*/publicObjectget(Stringkey,Objectdef){try{Objectobj=args.get(key);if(obj==null){returndef;}returnobj;}catch(Exceptionex){returndef;}}
/***往以后参数表中增加一个参数。*@paramkey参数名。*@paramvalue参数值。*@return增加了新参数后的参数表(对象实例没有变)。*@exceptionUnsupportedOperationException假如参数列表已被锁定。*/publicArgsset(Stringkey,Objectvalue){if(locked){thrownewUnsupportedOperationException("Argshavelocked,canmodify");}args.put(key,value);returnthis;}
/***往以后参数表中增加一个参数。*@paramkey参数名。*@paramvalue参数值。*@return增加了新参数后的参数表(对象实例没有变)。*@exceptionUnsupportedOperationException假如参数列表已被锁定。*/publicArgsset(Stringkey,intvalue){if(locked){thrownewUnsupportedOperationException("Argshavelocked,canmodify");}args.put(key,newInteger(value));returnthis;}
/***往以后参数表中增加一个参数。*@paramkey参数名。*@paramvalue参数值。*@return增加了新参数后的参数表(对象实例没有变)。*@exceptionUnsupportedOperationException假如参数列表已被锁定。*/publicArgsset(Stringkey,booleanvalue){if(locked){thrownewUnsupportedOperationException("Argshavelocked,canmodify");}args.put(key,newBoolean(value));returnthis;}
/***往以后参数表中增加一个参数。*@paramkey参数名。*@paramvalue参数值。*@return增加了新参数后的参数表(对象实例没有变)。*@exceptionUnsupportedOperationException假如参数列表已被锁定。*/publicArgsset(Stringkey,longvalue){if(locked){thrownewUnsupportedOperationException("Argshavelocked,canmodify");}args.put(key,newLong(value));returnthis;}
/***往以后参数表中增加一个参数。*@paramkey参数名。*@paramvalue参数值。*@return增加了新参数后的参数表(对象实例没有变)。*@exceptionUnsupportedOperationException假如参数列表已被锁定。*/publicArgsset(Stringkey,floatvalue){if(locked){thrownewUnsupportedOperationException("Argshavelocked,canmodify");}args.put(key,newFloat(value));returnthis;}
/***往以后参数表中增加一个参数。*@paramkey参数名。*@paramvalue参数值。*@return增加了新参数后的参数表(对象实例没有变)。*@exceptionUnsupportedOperationException假如参数列表已被锁定。*/publicArgsset(Stringkey,doublevalue){if(locked){thrownewUnsupportedOperationException("Argshavelocked,canmodify");}args.put(key,newDouble(value));returnthis;}
/***锁定参数列表。锁定后该参数列表将酿成只读的,任何对set()办法的挪用都将抛出*UnsupportedOperationException非常。已锁定的参数表再次挪用本办法没有任何影响。*@return锁定后的参数列表(对象实例没有变)。*/publicArgslock(){locked=true;returnthis;}
/***参数列表的字符串形貌。*@return一切参数值。*/publicStringtoString(){returnargs.toString();}}
J2ME在手机游戏开发的作用也是无用质疑的。至于桌面程序,可能有人说java不行,界面不好看,但是请看看NetBeans和Eclipse吧,他们都是利用java开发的,而他们的界面是多么的华丽,所以界面决不是java的缺点。还有一个不得不提的优点就是大多java人员都挂在嘴边的java的跨平台性,目前这确实也是java优点之一。 |
|