易截截图软件、单文件、免安装、纯绿色、仅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而非数据。


相关文档:

谈一谈我学习Java web编程的经历

     我现在是大三的学生,我在暑假开始接触Java web编程,现在差不多学了有半年了吧。那时Java自己一点了不懂,记得上网页设计老是提起jsp,是第一次接触到Java。从那时自己就在图书馆借阅关于Java的书籍。暑假和几个同学也参加了一个关于web编程的比赛,那时我们四人每天都在实验室中做比赛的题目。 ......

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连接数据库

1.java连接Oracle数据库:
 Class.forName("oracle.jdbc.driver.OracleDriver");
 String url="jdbc:oracle:thin:@127.0.0.1:1521:全局数据库名";
 String uname="用户名";
 String pwd="密码";
 Connection cn =DriverManager.getConnection(url,uname,pwd);
 Statement s=cn.createS ......

如何在Java 代码中执行 JavaScript

 在实际应用中,可能会碰到这样的情况,需要在Java代码中执行JavaScript。
 例如:
  import java.io.IOException;
import java.io.PrintWriter;
import javax.faces.context.FacesContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public cl ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号