精华内容
下载资源
问答
  • java迭代器中删除元素的实例操作详解2021-01-21 16:40:08我们知道通过Iterator,可以对集合中的元素进行遍历。那么在其中遇到我们不需要的元素时,可不可以在遍历的时候顺便给删除呢?答案是当然可以。在Iterator下...

    java迭代器中删除元素的实例操作详解

    2021-01-21 16:40:08

    我们知道通过Iterator,可以对集合中的元素进行遍历。那么在其中遇到我们不需要的元素时,可不可以在遍历的时候顺便给删除呢?答案是当然可以。在Iterator下有一个remove函数,专门

    我们知道通过Iterator,可以对集合中的元素进行遍历。那么在其中遇到我们不需要的元素时,可不可以在遍历的时候顺便给删除呢?答案是当然可以。在Iterator下有一个remove函数,专门用于删除的操作。下面我们就remove进行讲解,然后对删除元素方法进行说明,最后带来实例的展示。

    1.Iterator中的remove

    void remove():删除迭代器刚越过的元素

    从基础集合中移除这个迭代器返回的最后一个元素(可选操作)。两个线程中都删除,保证线程的同步。

    2.删除元素说明

    (1)迭代器遍历方式, 适用于连续内存存储方式,比如数组、 ArrayList(其实 ArrayList底层实现也是数组形式)。 缺点是只能从头开始遍历, 优点是可以边遍历边删除

    (2)arraylist每次遍历的时候会去判断该集合是否被修改过,调用的方法是checkForComodification()。 如果被修改过ConcurrentModificationException异常。

    (3)如何判断是否修改呢,主要是通过维护2个变量来实现,modCount记录了修改次数,expectedModCount记录期望修改次数。 通过iterator.remove()进行的删除操作,会同时修改modCount、ConcurrentModificationException; 而通过list.remove(object/index),则只会修改modCount。 这也是fast-fail机制

    3.删除实例

    Iterator it=list.iterator();

    while(it.hasNext()){

    Object e=it.next();

    if("b".equals(e)){

    it.remove();

    }

    }

    System.out.println(list);

    Iterator中的remove()实例代码:

    import java.util.ArrayList;

    import java.util.Iterator;

    import java.util.List;

    public class IteratorRemoveDemo {

    public static void main(String[] args) {

    List list = new ArrayList(5);

    for (int i = 0; i < 5; i++) {

    list.add(i);

    }

    System.out.println(list);

    https:// 移除最后访问的元素

    iterator.next();

    iterator.next();

    iterator.remove();

    System.out.println(list);

    }

    }

    /*输出:

    [0, 1, 2, 3, 4]

    [0, 2, 3, 4]

    */

    457929d81ed3ae876b1a2ed574c030e7.png

    原文链接:http://www.yuepc.com/a/3289.html

    http://www.yuepc.com 为 “沈一博客” 唯一官方服务平台,请勿相信其他任何渠道。

    标签:

    相关文章

    评论列表

    展开全文
  • 引用:http://blog.csdn.net/zxmcl/archive/2007/08/02/1723595.aspx<br />  <script> <br />//写cookies函数 作者:翟振凯 function SetCookie(name,value)//两个参数,一个是cookie的名子,...

    引用:http://blog.csdn.net/zxmcl/archive/2007/08/02/1723595.aspx

     

    <script>

    //写cookies函数 作者:翟振凯
    function SetCookie(name,value)//两个参数,一个是cookie的名子,一个是值
    {
        var Days = 30; //此 cookie 将被保存 30 天
        var exp  = new Date();    //new Date("December 31, 9998");
        exp.setTime(exp.getTime() + Days*24*60*60*1000);
        document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
    }
    function getCookie(name)//取cookies函数        
    {
        var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
         if(arr != null) return unescape(arr[2]); return null;

    }
    function delCookie(name)//删除cookie
    {
        var exp = new Date();
        exp.setTime(exp.getTime() - 1);
        var cval=getCookie(name);
        if(cval!=null) document.cookie= name + "="+cval+";expires="+exp.toGMTString();
    }



    SetCookie ("xiaoqi", "3")
    alert(getCookie('xiaoqi'));
    </script>

    一个非常实用的javascript读写Cookie函数

    一个非常实用的javascript读写Cookie函数  
    function  GetCookieVal(offset)
    //获得Cookie解码后的值
    {
    var  endstr  =  documents.cookie.indexOf  (";",  offset);
    if  (endstr  ==  -1)
    endstr  =  documents.cookie.length;
    return  unescape(documents.cookie.substring(offset,  endstr));
    }
    function  SetCookie(name,  value)
    //设定Cookie值
    {
    var  expdate  =  new  Date();
    var  argv  =  SetCookie.arguments;
    var  argc  =  SetCookie.arguments.length;
    var  expires  =  (argc  >  2)  ?  argv[2]  :  null;
    var  path  =  (argc  >  3)  ?  argv[3]  :  null;
    var  domain  =  (argc  >  4)  ?  argv[4]  :  null;
    var  secure  =  (argc  >  5)  ?  argv[5]  :  false;
    if(expires!=null)  expdate.setTime(expdate.getTime()  +  (  expires  *  1000  ));
    documents.cookie  =  name  +  "="  +  escape  (value)  +((expires  ==  null)  ?  ""  :  (";  expires="+  expdate.toGMTString()))
    +((path  ==  null)  ?  ""  :  (";  path="  +  path))  +((domain  ==  null)  ?  ""  :  (";  domain="  +  domain))
    +((secure  ==  true)  ?  ";  secure"  :  "");
    }
    function  DelCookie(name)
    //删除Cookie
    {
    var  exp  =  new  Date();
    exp.setTime  (exp.getTime()  -  1);
    var  cval  =  GetCookie  (name);
    documents.cookie  =  name  +  "="  +  cval  +  ";  expires="+  exp.toGMTString();
    }
    function  GetCookie(name)
    //获得Cookie的原始值
    {
    var  arg  =  name  +  "=";
    var  alen  =  arg.length;
    var  clen  =  documents.cookie.length;
    var  i  =  0;
    while  (i  <  clen)
    {
    var  j  =  i  +  alen;
    if  (documents.cookie.substring(i,  j)  ==  arg)
    return  GetCookieVal  (j);
    i  =  documents.cookie.indexOf("  ",  i)  +  1;
    if  (i  ==  0)  break;
    }
    return  null;
    }



    <SCRIPT  language="javascript">
    <!--
    function  openpopup(){
    url="popup.htm"
    window.open("gonggao.htm","gonggao","width=260,height=212,left=200,top=0")
    }

    function  get_cookie(Name)  {
    var  search  =  Name  +  "="
    var  returnvalue  =  "";
    if  (documents.cookie.length  >  0)  {
    offset  =  documents.cookie.indexOf(search)
    if  (offset  !=  -1)  {
    offset  +=  search.length
    end  =  documents.cookie.indexOf(";",  offset);
    if  (end  ==  -1)
    end  =  documents.cookie.length;
    returnvalue=unescape(documents.cookie.substring(offset,  end))
    }
    }
    return  returnvalue;
    }

    function  helpor_net(){
    if  (get_cookie('popped')==''){
    openpopup()
    documents.cookie="popped=yes"
    }
    }
    helpor_net()
    //-->
    </SCRIPT>



    如果点了确定,只要不清cookie,以后访问都不会再提示,如果不点确定则每次都会提示。放在js文件里,全站包含

    <SCRIPT LANGUAGE="JavaScript">
    <!--
    var the_cookie = document.cookie;
    var broken_cookie = the_cookie.split(":");
    var the_visiteraccepted = unescape(broken_cookie[1]);
    //
    if (the_visiteraccepted=="undefined"){
            var tmp=confirm('中国人何时何地。');
            if(tmp==false){
                    window.close();
            }else{
                    var the_visiteraccepted = 1;          
            var the_cookie = "ILoveChina=visiteraccepted:" + escape(the_visiteraccepted);                                 
            document.cookie = the_cookie;
            }
    }
    //-->
    </SCRIPT>



    1. Cookie的兼容性问题 

    Cookie的格式有2个不同的版本,第一个版本,我们称为Cookie Version 0,是最初由Netscape公司制定的,也被几乎所有的浏览器支持。而较新的版本,Cookie Version 1,则是根据RFC 2109文档制定的。为了确保兼容性,JAVA规定,前面所提到的涉及Cookie的操作都是针对旧版本的Cookie进行的。而新版本的Cookie目前还不被Javax.servlet.http.Cookie包所支持。 

    2. Cookie的内容 

    同样的Cookie的内容的字符限制针对不同的Cookie版本也有不同。在Cookie Version 0中,某些特殊的字符,例如:空格,方括号,圆括号,等于号(=),逗号,双引号,斜杠,问号,@符号,冒号,分号都不能作为Cookie的内容。这也就是为什么我们在例子中设定Cookie的内容为"Test_Content"的原因。 

    虽然在Cookie Version 1规定中放宽了限制,可以使用这些字符,但是考虑到新版本的Cookie规范目前仍然没有为所有的浏览器所支持,因而为保险起见,我们应该在Cookie的内容中尽量避免使用这些字符

    展开全文
  • JavaScript动态操作表格实例(添加,删除行,列及单元格) 2014-09-08 11:19 | 11504人阅读 | 来源 代码如下:       js动态操作表格    function init(){  _table=document.getElementById(...

    JavaScript动态操作表格实例(添加,删除行,列及单元格)

    2014-09-08 11:19 | 11504人阅读 | 来源
    代码如下:

    <html> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
    <title>js动态操作表格</title> 
    <script language="javascript"> 
    function init(){ 
    _table=document.getElementById("table"); 
    _table.border="1px"; 
    _table.width="800px"; 
    for(var i=1;i<6;i++){ 
    var row=document.createElement("tr"); 
    row.id=i; 
    for(var j=1;j<6;j++){ 
    var cell=document.createElement("td"); 
    cell.id=i+"/"+j; 
    cell.appendChild(document.createTextNode("第"+cell.id+"列")); 
    row.appendChild(cell); 

    document.getElementById("newbody").appendChild(row); 


    function rebulid(){ 
    var beginRow=document.getElementById("beginRow").value;/*开始行*/ 
    var endRow=document.getElementById("endRow").value;/*结束行*/ 
    var beginCol=document.getElementById("beginCol").value;/*开始列*/ 
    var endCol=document.getElementById("endCol").value;/*结束列*/ 
    var tempCol=beginRow+"/"+beginCol;/*定位要改变属性的列*/ 
    alert(tempCol); 
    var td=document.getElementById(tempCol); 
    for(var x=beginRow;x<=endRow;x++){ 
    for(var i=beginCol;i<=endCol;i++){ 
    if(x==beginRow){ 
    document.getElementById("table").rows[x].deleteCell(i+1); 

    else{ 
    document.getElementById("table").rows[x].deleteCell(i); 



    td.rowSpan=(endRow-beginRow)+1; 

    /*添加行,使用appendChild方法*/ 
    function addRow(){ 
    var length=document.getElementById("table").rows.length; 
    /*document.getElementById("newbody").insertRow(length); 
    document.getElementById(length+1).setAttribute("id",length+2);*/ 
    var tr=document.createElement("tr"); 
    tr.id=length+1; 
    var td=document.createElement("td"); 
    for(i=1;i<4;i++){ 
    td.id=tr.id+"/"+i; 
    td.appendChild(document.createTextNode("第"+td.id+"列")); 
    tr.appendChild(td); 

    document.getElementById("newbody").appendChild(tr); 

    function addRow_withInsert(){ 
    var row=document.getElementById("table").insertRow(document.getElementById("table").rows.length); 
    var rowCount=document.getElementById("table").rows.length; 
    var countCell=document.getElementById("table").rows.item(0).cells.length; 
    for(var i=0;i<countCell;i++){ 
    var cell=row.insertCell(i); 
    cell.innerHTML="新"+(rowCount)+"/"+(i+1)+"列"; 
    cell.id=(rowCount)+"/"+(i+1); 


    /*删除行,采用deleteRow(row Index)*/ 
    function removeRow(){ 
    document.getElementById("newbody").deleteRow(document.getElementById(document.getElementById("table").rows.length).rowIndex); 

    /*添加列,采用insertCell(列位置)方法*/ 
    function addCell(){ 
    /*document.getElementById("table").rows.item(0).cells.length 
    用来获得表格的列数 
    */ 
    for(var i=0;i<document.getElementById("table").rows.length;i++){ 
    var cell=document.getElementById("table").rows[i].insertCell(2); 
    cell.innerHTML="第"+(i+1)+"/"+3+"列"; 


    /*删除列,采用deleteCell(列位置)的方法*/ 
    function removeCell(){ 
    for(var i=0;i<document.getElementById("table").rows.length;i++){ 
    document.getElementById("table").rows[i].deleteCell(0); 


    </script> 
    </head> 
    <body onLoad="init();"> 
    <table  id="table" align="center"> 
    <tbody id="newbody"></tbody> 
    </table> 
    <div> 
    <table width="800px" border="1px" align="center"> 
    <tr><td align="center"><input type="button" id="addRow" name="addRow" onClick="addRow();" value="添加行"/></td><td align="center"><input type="button" id="delRow" name="delRow" onClick="removeRow();" value="删除行"/></td></tr> 
      <tr><td align="center"><input type="button" id="delCell" name="delCell"  onClick="removeCell();" value="删除列"/></td><td align="center"><input type="button" id="addCell" name="addCell" onClick=" addCell();" value="添加列"/></td></tr> 
     <tr><td align="center" colspan="2"><input type="button" id="addRows" name="addRows"  onClick="addRow_withInsert();" value="添加行"/></td></tr> 
    </table> 
    </div> 
    <div> 
    <table width="800px" border="1px" align="center"> 
    <tr><td>从第<input type="text" id="beginRow" name="beginRow"  value=""/>行到<input type="text"  name="endRow"  id="endRow" value=""/>行</td><td rowspan="2"  id="test"><input type="button" name="hebing" id="hebing" value="合并" onClick="rebulid();"/></td></tr> 
      <tr><td>从第<input type="text" name="beginCol" id="beginCol" value=""/>列到<input type="text" name="endCol" id="endCol" value=""/>列</td></tr> 
    </table> 
    </div> 
    </body> 
    </html> 
    展开全文
  • <!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--><script type="text/javascript"
    
    <script type="text/javascript"
    src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
    </script>
    <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
    1 <ASP:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" PageSize="5"
    2 Width="726px" AllowPaging="True" AllowSorting="True"
    3 DataKeyNames="DB1_1,DB1_2" OnRowDeleting="GridView1_RowDeleting" OnPageIndexChanging="GridView1_PageIndexChanging" OnRowDataBound="GridView1_RowDataBound" OnSorting="GridView1_Sorting" Height="279px" >
    4 <Columns>
    5 <ASP:TemplateField HeaderText="序号" >
    6 <ItemTemplate>
    7 <%# this.GridView1.PageIndex * this.GridView1.PageSize this.GridView1.Rows.Count 1%>
    8 </ItemTemplate>
    9 </ASP:TemplateField>
    10 <ASP:TemplateField HeaderText="选择" >
    11 <ItemTemplate>
    12 <ASP:CheckBox ID="chkSelect" runat="server" ></ASP:CheckBox>
    13 </ItemTemplate>
    14 </ASP:TemplateField>
    15 <ASP:TemplateField HeaderText="操作" ShowHeader="False">
    16 <ItemTemplate>
    17 <ASP:LinkButton ID="lbtnDelete" runat="server" CausesValidation="False" CommandName="Delete"
    18 Text="删除" OnClientClick="return confirm('确认要删除吗?');"></ASP:LinkButton>
    19 </ItemTemplate>
    20 </ASP:TemplateField>
    21 </Columns>
    22 <AlternatingRowStyle BackColor="Aquamarine" />
    23 </ASP:GridView>

    1 <ASP:CheckBox ID="chkSelectAll" runat="server" Text="全部选中" OnCheckedChanged="chkSelectAll_CheckedChanged" AutoPostBack="True" ></ASP:CheckBox>
    2 <ASP:Button ID="btnDelete" runat="server" Text="删除" OnClick="btnDelete_Click" />

    1 protected void btnDelete_Click(object sender, EventArgs e)
    2 {
    3 string strDelete = "";
    4 for (int i = 0; i < this.GridView1.Rows.Count; i )
    5 {
    6 string Label;
    7 bool isChecked = ((CheckBox)GridView1.Rows[i].FindControl("chkSelect")).Checked;
    8 Label = ((Label)GridView1.Rows[i].FindControl("labXH")).Text;
    9 if (isChecked)
    10 {
    11 strDelete = "DB1_1" "=" Label;
    12 }
    13 }
    14 conn.RunSql("Delete from DB1 where " strDelete
    15 this.chkSelectAll.Checked = false;
    16 GridViewBind();
    17 }
    18
    19 protected void chkSelectAll_CheckedChanged(object sender, EventArgs e)
    20 {
    21 //遍历GridView行获取CheckBox属性
    22 for (int i = 0; i < this.GridView1.Rows.Count; i )
    23 {
    24 ((CheckBox)GridView1.Rows[i].FindControl("chkSelect")).Checked = this.chkSelectAll.Checked;
    25 }
    26 }

    <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
    <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
    展开全文
  • 转载:http://www.codefans.net/articles/1435.shtml 转载:http://www.cnblogs.com/morewindows/archive/2011/08/14/2138412.html 1 //浏览文件夹 2 BOOL CShortCutDlg::BrowseForFolder( 3 LPITEMIDLIST...
  • Unity3D研究院编辑器之不实例化Prefab获取删除更新组件(十五) | 雨松MOMO程序研究院 http://www.360doc.com/content/16/0815/14/110467_583372012.shtml 2016-08-15 勤奋不止 阅 1939 转 6 转藏到我的图书馆 ...
  • <!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--><script type="text/javascript"
  • 资料仅可参考如有不妥请联系本人改正或者删除 * 2020年08月13日 Python程序实例解析 资料仅可参考如有不妥请联系本人改正或者删除 * 2020年08月13日 Python程序实例解析 资料仅可参考如有不妥请联系本人改正或者删除...
  • 如何unregister一个实例

    2020-12-01 22:01:55
    需要向Service Center通知将原有启动的实例删除ÿ08;或者状态修改为不可用),待检测到网卡可用后,还需要重新启动实例。 不知道当前go-chassis有没有办法实现?或者能在unregister后...
  • 一、Python中对文件、文件夹操作时经常用到的os模块和shutil模块常用方法。 import os 1.得到当前工作目录,即当前...函数用来删除一个文件:os.remove()4.删除多个目录:os.removedirs(r“c:\python”)5.检验给...
  • 收集了几个android2.1相关的学习实例源码,ContentProvider主要使用系统的contentProvider。有与数据库相关的,比如ex08_2_SQLite,演示不用contentProvider,直接用裸sql进行操作。介绍DatabaseHelper.删除表的知道...
  • 2、执行:前台修改完数据后,提交保存,后台通过ID获取数据实例,通过form.is_valid()成功验证数据想信息后,调用form.save()方法将数据保存到数据库。 1.1 组织架构修改视图 修改和添加操...
  • 资料仅可参考如有不妥请联系本人改正或者删除 * 2020年08月13日 python爬虫入门邓旭东 资料仅可参考如有不妥请联系本人改正或者删除 * 2020年08月13日 python爬虫入门邓旭东 资料仅可参考如有不妥请联系本人改正或者...
  • python java 调用jar 包下载jythonjython2.1文章curiousby2016-08-01697浏览量CrazyWing:Python自动化运维开发实战 十、Python数据类型之元组导语:元组介绍访问元组修改元组删除元组元组运算符元组内置函数元组...
  • python java 调用jar 包下载jythonjython2.1文章curiousby2016-08-01697浏览量CrazyWing:Python自动化运维开发实战 十、Python数据类型之元组导语:元组介绍访问元组修改元组删除元组元组运算符元组内置函数元组...
  • 1.字典实例:建立学生学号成绩字典,做增删改查遍历操作。 dict={"01":"90","02":"91","03":"92","04":"94","05":"95","06":"96","07":"97","08":"98"} print("查询02学号的成绩") print(dict.get('02')) ...
  • 数据库设计三大范式应用实例剖析 2005-12-05 08:49 来源:天极开发... 数据库的设计范式是数据库设计所需要满足的规范,满足这些规范的数据库是简洁的、结构明晰的,同时,不会发生插入(insert)、删除(delete
  • Android 上百实例源码分析以及开源分析 集合打包4

    千次下载 热门讨论 2012-07-10 21:54:03
    实例非常好,非常使用,在开发中可以借鉴啊。 本项目有24个目标文件。 BaseActivity 头部bar的布局 BaseLayout 头部bar的布局 DataListHolder 就两个成员 ImageView TextView 你说干嘛呢 ItemAdapter 继承适配器 ...
  • 数据库设计三大范式应用实例剖析2005-12-05 08:49作者:宋宝华出处:天极开发责任编辑:方舟 引言 数据库的设计范式是数据库设计所需要满足的规范,满足这些规范的数据库是简洁的、结构明晰的,同时,不会发生插入...
  • 一个解决"安装SQL实例挂起"的偏方 2008-06-05 08:19 除非是一个刚刚安装好的全新系统,只要我安装SQL 总会遇到这个家伙: 搜寻过很多办法,删除注册表中所有与MSSQL相关的键值,虽然有时候可以,但太...
  • title: gitlib安装与删除author: Joe Tongtags:GITcategories:ITdate: 2020-08-07 11:12:15安装添加GitLab软件包存储库。接下来,安装GitLab软件包。将http://gitlab.example.com更改为您想要访问您的GitLab实例的...
  • day08

    2016-03-21 13:24:30
    1、ArrayList是一个支持存放指定数据类型对象的java有序数组类,具有获取、新增和删除数组中元素的方法。 2、单类是特殊的java类,在创建实例时,一个类仅允许创建一个实例。应用能够在内存中存在多久,单例就能...
  • 实例183 M3U文件的创建及删除 264 实例184 获取MP3文件的播放时间 267 实例185 异步加载并播放声音文件 269 5.3 动画播放 270 实例186 播放Flash动画 270 实例187 制作AVI播放器 272 实例188 播放GIF动画 273 ...
  • Mysql实例:建库建表并插入数据_mysql数据库怎么创建数据表并添加数据发布时间:2017-06-21 08:45:39作者:佚名阅读:(224)drop database if exists itbiancheng; // 如果存在itbiancheng则删除create database ...
  • 解决(1062, "Duplicate entry '2019-08-30' for key 'rdate'") 显然这个问题是因为插入重复主键导致从库不工作了,更改库的唯一限制: unique 为normal 或者删除unique ALTER TABLE 表明 DROP INDEX 字节名; ...
  • 如有冒犯请联系本人,或删除,或标明出处。 因为好的文章,以前只想收藏,但连接有时候会失效,所以现在碰到好的直接转到自己这里。 原文 出处http://www.cnblogs.com/thcjp/archive/2006/08/04/468047.html ...

空空如也

空空如也

1 2 3 4 5 ... 9
收藏数 168
精华内容 67
关键字:

删除08实例