摘要: static 变量:举例子,譬如你做一个卖西瓜的程序,里面有一个类叫做西瓜:watermelonclass watermelon(){ static int totalSell; //总的西瓜销售量 int price; //西瓜的价格 double weight; //西瓜的重量}其中西瓜只是针对单个西瓜的对象,譬如说有西瓜的价格,西瓜的重量等。可是如何表示一个全局的概念,如西瓜的总销售量?只需在这个变量上加入static即可,这样totalsell这个变量便是所有的西瓜们共有的。任何一个西瓜对象都可以对这个参数进行操作,譬如说西瓜A卖出--totalsell++; 西... 阅读全文
posted @ 2011-12-13 21:44 小卡的土豆园 阅读(291) 评论(0) 推荐(0) 编辑
摘要: Java中没有指针,对于对象的传递来说都是引用而不是拷贝。但是需要注意的是,在java中int、double这些都是数值类型而非对象,但是如果采用Integer、Double就是对象了。还有纯数组(非容器)的传递也是引用。自己跑了一些程序来验证了一下1. 纯数组public static void main(String[] args) { double[] array = {0.0,0.0}; try_array(array); System.out.println(array[0]+" "+array[1]);}private static void try_array 阅读全文
posted @ 2011-09-13 16:44 小卡的土豆园 阅读(263) 评论(0) 推荐(1) 编辑
摘要: Java中map的种类很多,java.util包中按照键值排序的容器为TreeMap。TreeMap中默认的排序为升序,如果要改变其排序可以自己写一个Comparator,就暂且把Comparator叫做比较子。下面的例子把原来降序的容器改为降序--比较子定义class descendComparator implements Comparator{ public int compare(Object o1,Object o2) { Double i1=(Double)o1; Double i2=(Double)o2; return -i1... 阅读全文
posted @ 2011-08-29 18:52 小卡的土豆园 阅读(8051) 评论(0) 推荐(0) 编辑
摘要: 还是google中的工具,由于HashMap中键值是不排序的,所以如果你需要排序的Multimap的话就需要使用guava中的TreeMultimap。类:com.google.common.collect.TreeMultimap--定义:TreeMultimap<Integer,Integer> map = TreeMultimap.create(); map.put(2, 4);map.put(1, 2);map.put(1, 3);map.put(2, 6);map.put(2, 4);map.put(3, 6);map.put(11, 2);map.put(21, 6.. 阅读全文
posted @ 2011-08-29 12:10 小卡的土豆园 阅读(4945) 评论(0) 推荐(0) 编辑
摘要: 定义一个Hashmap作为例子Hashmap<Integer,Integer> map =new Hashmap<Integer,Integer>();1. 遍历 使用遍历器遍历:Iterator iter = map.entrySet().iterator();while(iter.hasNext()){ Map.Entry<Integer, Integer> entry = (Map.Entry<Integer, Integer>)iter.next(); //取得key和Value int key = entry.getKey(); int 阅读全文
posted @ 2011-08-27 16:11 小卡的土豆园 阅读(296) 评论(0) 推荐(0) 编辑
摘要: Java中字符串的split函数使用心得。Java中切分字符串一般使用String中自带的函数split,其中split的参数可以是正则式,使用比较方便。1. 使用方法如下面的代码所示。split的参数是分割字符串的字符,Java和C++的Tokenize比起来比较好的地方是这个字符可以用正则式来匹配。即当你需要用空格和逗号来切割这个字符串的时候,就只需要写入正则式:" |," 。其中|表示或者。 String a = "123 456,789"; String[] b = a.split(" |,"); for(String c:b 阅读全文
posted @ 2011-08-16 20:06 小卡的土豆园 阅读(395) 评论(0) 推荐(0) 编辑
摘要: Java的遍历和C++大同小异,不过里面有个很方便的用法:for-each方法,挺实用的。拿ArrayList做例子,介绍几种遍历方法吧。初始化ArrayList: ArrayList<Integer> a = new ArrayList<Integer> (); a.add(1); a.add(2); a.add(3);1. 用遍历器遍历 Iterator<Integer> it2 = a.iterator(); while(it2.hasNext()) { System.out.println(it2.next()); }注意:遍历器和C++中的不同,不 阅读全文
posted @ 2011-08-16 15:51 小卡的土豆园 阅读(313) 评论(0) 推荐(0) 编辑
摘要: 因为项目需要,又开始写Java代码。C++有一套固定的STL,而java的容器则灵活的多,最基本的应该是java.util.*下面的而一些容器,当然在其他的包里也有其他继承了该包为了各自需求实现的一些容器。HashMutliMapSTL中有MultiMap,而java的util包中并没有这个容器。想自己写也没有这个时间,于是去网上搜了下。发现了在google的guava libary的包下有这个容器。google类库的下载地址:http://code.google.com/p/guava-libraries/wiki/Release09。import的路径是:com.google.common 阅读全文
posted @ 2011-08-15 20:17 小卡的土豆园 阅读(16463) 评论(0) 推荐(0) 编辑
摘要: multimap提供了可以一种可以有重复键值的STL map类型。其插入方式和map相似,但是由于可以拥有重复键值所以在查找方面有些不同。查找1. 直接找到每种键值的所有元素的第一个元素的游标通过函数:lower_bound( const keytype& x ), upper_bound( const keytype& x ) 可以找到比指定键值x的小的键值的第一个元素和比指定键值x大的键值的第一个元素。返回值为该元素的游标。细节:当到达键值x已经是最大时,upper_bound返回的是这个multimap的end游标。同理,当键值x已经是最小了,lower_bound返回的 阅读全文
posted @ 2011-08-09 15:19 小卡的土豆园 阅读(13242) 评论(0) 推荐(0) 编辑
摘要: 小菜一枚,先从怎么使用这个Linux下的编译器下手由于本子太顽强,没有如愿装上Linux,听从师姐装了个cygwin的仿真器。cygwin是个在Windows下面仿真Linux环境的仿真器,这样比装双系统方便多了,还可以使用Linux中的编译等功能。不扯了,下面开始正题:1. 路径 (示例) 盘符: cd D: 文件夹: cd fileName 其中文件夹的名称如果碰到空格等一些特殊符号,需要使用转译符号来转译。2. 命令 -x filename -x none filename -ar 可以用来创建、修改库,也可以从库中提出单个模块 格式:ar[-][abcfilNoPsSuvV][memb 阅读全文
posted @ 2011-08-07 16:19 小卡的土豆园 阅读(241) 评论(0) 推荐(0) 编辑