摘要:我们到底能走多远系列(4)扯淡: 不知道有多少人喜欢听着音乐写点代码的?我是其中一个。以前在公司的时候期望能买个好点的MP3什么的心无旁骛的写点代码,领点工资。生活总是没有想象得美好。程序员要处理的事有很多不是坐在舒服的椅子上,喝点咖啡或绿茶,敲几行代码能解决的。 是不是大家都是容易放弃的人呢?反正我是的,上个月,看本书看了2章,就搁置了。上个星期开始尝试听voa,临近的3天就荒废了。今天继续吧。 园子里读到过一篇怎样找出自己人生的终极目标:用一个小时,勿打扰的思考,不断记下浮现脑海的答案,列出表格。作者认为用这种方式在最后能够发现每个人自己一生的目标。从而开启一个不一样的人生旅程。不知...
阅读全文
摘要:我们到底能走多远系列(3)扯淡:现在项目里的java代码,都是封装,封装,再封装。在没有空闲的赶工编码,几年后会感觉学不动,毕竟少了很多思考的时间。也基本不会去研究代码的底层实现。时间一长就会觉得自己什么也不会。一个大型的项目,一般不可能只用java实现,可能会用到C,C++,shell,python等等。单单一个web就要学很多,jsp,jquery,javascript,html,css,各种开源的不开源的框架,各种web服务器,数据库等等等。java程序员的确容易迷茫,但精通一样吧,怕找不到工作,全学吧,怕一直是码农。其实,我觉得大多数的人都只是希望能做到“工程师”,解决问题的人。我看到
阅读全文
摘要:我们到底能走多远系列(2)遍历指定路径下的文件,文件和文件夹需要区分。为了把文件名和是否为文件夹记录下来,实现一个modelpackage web.method.file.model;public class FileModel { // 是否为文件夹 private boolean isDirectory; // 文件名 private String fileNmae; public FileModel(boolean isDirectory, String fileNmae) { super(); this.isDi...
阅读全文
摘要:来自网络资源:1. 基于字节的输入流 2. 基于字节的输出流3. 基于字符的输入流4. 基于字符的输出流
阅读全文
摘要:我们到底能走多远系列(1)“我们到底能走多远系列”:开始我的java之路。我要挖出这个地道,离开这里。IO入门代码阅读:字节流: private void writeTxt(String path, String value) throws IOException{ OutputStream fos = new FileOutputStream(path);//构造方法1 fos.write(value.getBytes()); fos.close(); } private void readTxt(String path) thro...
阅读全文
摘要:下面的这么多方法组建起来可以写出很多有用的功能了吧?为了很方便的代表文件的概念,以及存储一些对于文件的基本操作,在java.io包中设计了一个专门的类——File类。 在File类中包含了大部分和文件操作的功能方法,该类的对象可以代表一个具体的文件或文件夹,所以以前曾有人建议将该类的类名修改成FilePath,因为该类也可以代表一个文件夹,更准确的说是可以代表一个文件路径。 下面介绍一下File类的基本使用。 1、File对象代表文件路径File类的对象可以代表一个具体的文件路径,在实际代表时,可以使用绝对路径也可以使用相对路径。下面是创建的文件对象示例。 public File(String
阅读全文
摘要:Servlet它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应的中间层每一个servlet都会继承HttpServlet:(1) init() 方法 在 Servlet 的生命期中,仅执行一次 init() 方法。它是在服务器装入 Servlet 时执行的。 可以配置服务器,以在启动服务器或客户机首次访问 Servlet 时装入 Servlet。 无论有多少客户机访问 Servlet,都不会重复执行 init() 。 缺省的 init() 方法通常是符合要求的,但也可以用定制 init() 方法来覆盖它,典型的是管理服务器端资源。 例如,可能编写一个定制 init() 来...
阅读全文
摘要:来自:http://www.cnblogs.com/zhishan/articles/2441893.htmlGET和POST区别和用法多人都分不清GET与POST的区别,以及什么时候用GET?什么时候用POST? GET和POST两种方法都是将数据送到服务器,但你该用哪一种呢? HTTP标准包含这两种方法是为了达到不同的目的。POST用于创建资源,资源的内容会被编入HTTP请示的内容中。例如,处理订货表单、在数据库中加入新数据行等。 当请求无副作用时(如进行搜索),便可使用GET方法;当请求有副作用时(如在数据库添加数据行),则用POST方法。一个比较实际的问题是:GET方法可能会产生很长的
阅读全文
摘要:《算法导论》应该是一本很好的书吧,希望能把他啃完。public class JustDoIt0804 { /** * 插入排序(来自《算法导论》) */ public static void main(String[] args) { int[] x = new int[]{4,2,1,5,7,9,1}; insertSort(x); for (int i = 0; i < x.length; i++) { System.out.print(x[i] + " "); } } ...
阅读全文
摘要:在看分治算法的时候,想先自己写写合并的代码,还是不熟练啊!为了保持对代码的敏感度,要保持练习。加油!public class JustDoIt0803 { /** * 分治算法学习前准备 */ public static void main(String[] args) { int[] x = new int[]{1,4,5,33}; int[] y = new int[]{2,4,5,7,9,12,45,78}; int[] z = mergeArrays(x, y); for (int i = 0; i <...
阅读全文
摘要:一个数组参数抛出的问题当时的情况是这样的: public static void test(Integer[] x){ x[1] = 99; } public static void main(String[] args) { Integer[] temp1 = new Integer[] {3, 4}; test(temp1);// 1 Integer[] temp2 = {5, 6}; test(temp2);// 2 } Normal 0 ...
阅读全文
摘要:当我们求解某些问题时,由于这些问题要处理的数据相当多,或求解过程相当复杂,使得直接求解法在时间上相当长,或者根本无法直接求出。对于这类问题,我们 往往先把它分解成几个子问题,找到求出这几个子问题的解法后,再找到合适的方法,把它们组合成求整个问题的解法。如果这些子问题还较大,难以解决,可以再 把它们分成几个更小的子问题,以此类推,直至可以直接求出解为止。这就是分治策略的基本思想。百科上的一个例子:给你一个装有1 6个硬币的袋子。1 6个硬币中有一个是伪造的,并且那个伪造的硬币比真的硬币要轻一些。你的任务是找出这个伪造的硬币。为了帮助你完成这一任务,将提供一台可用来比较两组硬 币重量的仪器,利用这
阅读全文
摘要:每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。 选择排序是不稳定的排序方法。public <T extends Comparable<T>> void sort(T[] array, boolean ascend) { int len = array.length; for (int i = 0; i < len; i++) { int selected = i; for (int j = i + 1; j < len; j++) { int compare = array[j].comp
阅读全文
摘要:我想:这个大概和平时打双扣的时候拿牌排序的流程一样吧!插入排序就是每一步都将一个待排数据按其大小插入到已经排序的数据中的适当位置,直到全部插入完毕。 插入排序方法分直接插入排序和折半插入排序两种,这里只介绍直接插入排序,折半插入排序留到“查找”内容中进行。 图1演示了对4个元素进行直接插入排序的过程,共需要(a),(b),(c)三次插入。代码 public class InsertionSorter { public void Sort(int[] arr) { for (int i = 1; i < arr.Length; i++) { int t = arr[i]...
阅读全文
摘要:public static void sort(int[] values){ int temp; for(int i=0 ; i < values.length ; ++i){ for(int j=0; j <values.length - i - 1; ++j){ if(values[j] > values[j + 1]){ temp = values[j]; ...
阅读全文
摘要:1、final类 final类不能被继承,因此final类的成员方法没有机会被覆盖,默认都是final的。在设计类时候,如果这个类不需要有子类,类的实现细节不允许改变,并且确信这个类不会载被扩展,那么就设计为final类。 2、final方法 如果一个类不允许其子类覆盖某个方法,则可以把这个方法声明为final方法。 使用final方法的原因有二: 第一、把方法锁定,防止任何继承类修改它的意义和实现。 第二、高效。编译器在遇到调用final方法时候会转入内嵌机制,大大提高执行效率。 3、final变量(常量) 用final修饰的成员变量表示常量,值一旦给定就无法改变! final修饰的变...
阅读全文
摘要:import java.util.HashMap;import java.util.Map;import java.util.TreeMap;public class TestMain { public static void main(String[] args) { // HashMap可以的键值可以是null, "". Map<String, String> strMap1 = new HashMap<String, String>(); strMap1.put(null, "1"); strMap1.put("&
阅读全文