易截截图软件、单文件、免安装、纯绿色、仅160KB

java实现的stack pop方法小细节

 前些天编小程序,写其中有一个自己实现的stack的pop如下:
public class Stack<T>{
 
   private ArrayList<T>  list;
   public Stack(){
          list =  new ArrayList<T>();
}
          public T pop(){
              if(list.size != 0 ){
                 T popOut = list.get(list.size - 1);
                 remove(popOut);
                 return popOut;
             }
             else{
               return null;
            }
 }
}
我当时在另一个类里debug,愣是找不出来,最后才发现这里的pop方法出问题了。当list是int数据时,若list为1,2,3,2;pop出来是2,但是list并不如想象中的为1,2,3;而是变成了1,3,2;这是因为double的equals方法认定只要值一样两者就一样,它popPut为2,接着remove(2);它在找到第一个2是就认为那已经匹配了,就把它删除,所以remove中应该用他的重载函数remove(list.size - 1).
当然还应该注意若是int型的他优先将其认为是index而非数据。


相关文档:

sql 2005 存储过程分页 java 代码

 create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',         
@pagesize int output,--每页显示记录条数
@currentpage int output,--第几页
@orderid nvarchar(50),--主键排序
@sort int,--排序方式,1表示升序,0表示降序排列 ......

JAVA String类学习

  最近在找工作,基本都是java开发的方向,很多笔试、面试题都是围绕String类对象展开的,花样很多,但是万变不离其中,掌握了基本的原理,无论怎么变,实质都是一样的。下面总结一下关于String的基本知识点:
(一)String是final的
可能我们很多人遇到过这个问题final关键字有什么作用,其中一个回答就是final修饰 ......

java多线程例子

 到这里我们做一个完整的例子来说明线程产生的方式不同而生成的线程的区别:
package debug;
import java.io.*;
import java.lang.Thread;
class MyThread extends Thread{
public int x = 0;
public void run(){
System.out.println(++x);
}
}
class R implements Runnable{
private int x = ......

Java访问权限浅析

 Java访问权限一共有四种,他们之间的访问权限比较通过以下一组例子来解释
例子code:ModiferDemo.java
package com.glust.blog.j2se;
public class ModiferDemo{
  //四种访问权限的变量(属性)
  private int a;
  int b;//friendly
  protected int c;
  public int d;
  ......

转帖: JAVA 编程规范

http://blog.csdn.net/gztoby/archive/2004/11/11/176737.aspx
1.
应用范围
本规范应用于采用
J2EE
规范的项目中,所有项目中的
JAVA
代码(含
JSP

SERVLET

JAVABEAN

EJB
)均应遵守这个规范。同时,也可作为其它项目的参考。
 
2.
设计类和方法
2.1    
创建具有很强 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号