2019独角兽企业重金招聘Python工程师标准>>> hot3.png

ArrayList和Vector使用了数组的实现,可以认为ArrayList或者Vector封装了对内部数组的操作,比如向数组中添加,删除,插入新的元素或者数据的扩展和重定向。

 

LinkedList使用了循环双向链表数据结构。与基于数组ArrayList相比,这是两种截然不同的实现技术,这也决定了它们将适用于完全不同的工作场景。

 

LinkedList链表由一系列表项连接而成。一个表项总是包含3个部分:元素内容,前驱表和后驱表。

在下图展示了一个包含3个元素的LinkedList的各个表项间的连接关系。在JDK的实现中,无论LikedList是否为空,链表内部都有一个header表项,它既表示链表的开始,也表示链表的结尾。表项header的后驱表项便是链表中第一个元素,表项header的前驱表项便是链表中最后一个元素

下面以增加和删除元素为例比较ArrayList和LinkedList的不同之处:

1

(1)增加元素到列表尾端:

 

在ArrayList中增加元素到队列尾端的代码如下:

 

public boolean add(E e){ensureCapacity(size+1);//确保内部数组有足够的空间elementData[size++]=e;//将元素加入到数组的末尾,完成添加return true;      
}

 

ArrayList中add()方法的性能决定于ensureCapacity()方法。ensureCapacity()的实现如下:

 

public vod ensureCapacity(int minCapacity){modCount++;int oldCapacity=elementData.length;if(minCapacity>oldCapacity){    //如果数组容量不足,进行扩容Object[] oldData=elementData;int newCapacity=(oldCapacity*3)/2+1;  //扩容到原始容量的1.5倍if(newCapacitty<minCapacity)   //如果新容量小于最小需要的容量,则使用最小//需要的容量大小newCapacity=minCapacity ;  //进行扩容的数组复制elementData=Arrays.copyof(elementData,newCapacity);}
}

 

可以看到,只要ArrayList的当前容量足够大,add()操作的效率非常高的。只有当ArrayList对容量的需求超出当前数组大小时,才需要进行扩容。扩容的过程中,会进行大量的数组复制操作。而数组复制时,最终将调用System.arraycopy()方法,因此add()操作的效率还是相当高的。

 

LinkedList 的add()操作实现如下,它也将任意元素增加到队列的尾端:

 

public boolean add(E e){addBefore(e,header);//将元素增加到header的前面return true;
}

 

其中addBefore()的方法实现如下:

 

private Entry<E> addBefore(E e,Entry<E> entry){Entry<E> newEntry = new Entry<E>(e,entry,entry.previous);newEntry.provious.next=newEntry;newEntry.next.previous=newEntry;size++;modCount++;return newEntry;
}

 

可见,LinkeList由于使用了链表的结构,因此不需要维护容量的大小。从这点上说,它比ArrayList有一定的性能优势,然而,每次的元素增加都需要新建一个Entry对象,并进行更多的赋值操作。在频繁的系统调用中,对性能会产生一定的影响。

 

1

(2)增加元素到列表任意位置

 

除了提供元素到List的尾端,List接口还提供了在任意位置插入元素的方法:void add(int index,E element);

 

由于实现的不同,ArrayList和LinkedList在这个方法上存在一定的性能差异,由于ArrayList是基于数组实现的,而数组是一块连续的内存空间,如果在数组的任意位置插入元素,必然导致在该位置后的所有元素需要重新排列,因此,其效率相对会比较低。

 

以下代码是ArrayList中的实现:

 

public void add(int index,E element){if(index>size||index<0)throw new IndexOutOfBoundsException("Index:"+index+",size: "+size);ensureCapacity(size+1);System.arraycopy(elementData,index,elementData,index+1,size-index);elementData[index] = element;size++;
}

 

可以看到每次插入操作,都会进行一次数组复制。而这个操作在增加元素到List尾端的时候是不存在的,大量的数组重组操作会导致系统性能低下。并且插入元素在List中的位置越是靠前,数组重组的开销也越大。

 

而LinkedList此时显示了优势:

 

public void add(int index,E element){addBefore(element,(index==size?header:entry(index)));
}

 

可见,对LinkedList来说,在List的尾端插入数据与在任意位置插入数据是一样的,不会因为插入的位置靠前而导致插入的方法性能降低。

 

1

(3)删除任意位置元素

 

对于元素的删除,List接口提供了在任意位置删除元素的方法:

 

public E remove(int index);

 

对ArrayList来说,remove()方法和add()方法是雷同的。在任意位置移除元素后,都要进行数组的重组。ArrayList的实现如下:

 

public E remove(int index){RangeCheck(index);modCount++;E oldValue=(E) elementData[index];int numMoved=size-index-1;if(numMoved>0)System.arraycopy(elementData,index+1,elementData,index,numMoved);elementData[--size]=null;return oldValue;
}

 

可以看到,在ArrayList的每一次有效的元素删除操作后,都要进行数组的重组。并且删除的位置越靠前,数组重组时的开销越大。

 

public E remove(int index){return remove(entry(index));         
}
private Entry<E> entry(int index){if(index<0 || index>=size)throw new IndexOutBoundsException("Index:"+index+",size:"+size);Entry<E> e= header;if(index<(size>>1)){//要删除的元素位于前半段for(int i=0;i<=index;i++)e=e.next;}else{for(int i=size;i>index;i--)e=e.previous;}return e;
}

 

在LinkedList的实现中,首先要通过循环找到要删除的元素。如果要删除的位置处于List的前半段,则从前往后找;若其位置处于后半段,则从后往前找。因此无论要删除较为靠前或者靠后的元素都是非常高效的;但要移除List中间的元素却几乎要遍历完半个List,在List拥有大量元素的情况下,效率很低。

 

1

(4)容量参数

 

容量参数是ArrayList和Vector等基于数组的List的特有性能参数。它表示初始化的数组大小。当ArrayList所存储的元素数量超过其已有大小时。它便会进行扩容,数组的扩容会导致整个数组进行一次内存复制。因此合理的数组大小有助于减少数组扩容的次数,从而提高系统性能。

 

public  ArrayList(){this(10);  
}
public ArrayList (int initialCapacity){super();if(initialCapacity<0)throw new IllegalArgumentException("Illegal Capacity:"+initialCapacity)this.elementData=new Object[initialCapacity];
}

 

ArrayList提供了一个可以制定初始数组大小的构造函数:

 

public ArrayList(int initialCapacity)

 

现以构造一个拥有100万元素的List为例,当使用默认初始化大小时,其消耗的相对时间为125ms左右,当直接制定数组大小为100万时,构造相同的ArrayList仅相对耗时16ms。

 

1

(5)遍历列表

 

遍历列表操作是最常用的列表操作之一,在JDK1.5之后,至少有3中常用的列表遍历方式:forEach操作,迭代器和for循环。

 

String tmp;
long start=System.currentTimeMills();    //ForEach 
for(String s:list){tmp=s;
}
System.out.println("foreach spend:"+(System.currentTimeMills()-start));
start = System.currentTimeMills();
for(Iterator<String> it=list.iterator();it.hasNext();){    tmp=it.next();
}
System.out.println("Iterator spend;"+(System.currentTimeMills()-start));
start=System.currentTimeMills();
int size=;list.size();
for(int i=0;i<size;i++){                     tmp=list.get(i);
}
System.out.println("for spend;"+(System.currentTimeMills()-start));

 

构造一个拥有100万数据的ArrayList和等价的LinkedList,使用以上代码进行测试,可以看到,最简便的ForEach循环并没有很好的性能表现,综合性能不如普通的迭代器,而是用for循环通过随机访问遍历列表时,ArrayList表项很好,但是LinkedList的表现却无法让人接受,甚至没有办法等待程序的结束。这是因为对LinkedList进行随机访问时,总会进行一次列表的遍历操作。性能非常差,应避免使用。

转载于:https://my.oschina.net/u/3569034/blog/1584338

ArrayList和LinkedList的区别

相关文章

  1. asp定义的数连接串

    在ASP中连接数据库一、存取数据库的原理 在ASP中&#xff0c;用来存取数据库的对象统称ADO对象&#xff08;Active Data Objects&#xff09;&#xff0c;主要含有三种对象&#xff1a;Connection、Recordset和Command&#xff0c;其中Connection负责打开或连接数据库&#xff…...

    2023/4/16 8:00:36
  2. 用asp编写验证码

    <div align"center"><font size"2">校验码 <%for i1 to 4Randomizernumint(rnd()*35)1str"0123456789abcdefghijkLmnopqrstuvwxyz"selectstrselectstr&mid(str,rnum,1)nextfor i1 to 4 imgnamemid(selectstr,i,1) %><…...

    2023/4/16 8:00:35
  3. 在asp编程中trim函数的详述及漏洞破解与防护

    在asp编程中&#xff0c;我们常常使用trim(rtrim,ltrim)函数去掉一些数据的开头和结尾的空格&#xff0c;笔者最近写了一个asp聊天室&#xff0c;有下面的一段代码&#xff1a;  <% dim name,title  nametrim(request.form("name"))  passwordtrim(request.f…...

    2023/4/16 8:00:34
  4. c#中DataList的使用

    DataList控件的应用中。可以处理用户点击事件。在aspx代码中&#xff1a;<asp:DataList id"datalist2".......加入OnItemCommand "DataList_ItemCommand"然后加入下面的C#代码&#xff1a;void BindList()DataList2用{string commstr "select * …...

    2023/4/16 8:00:33
  5. asp中建立搜索的不同方法

    searchfunction&#xff1a;<meta http-equiv"Content-Type" content"text/html; charsetgb2312"><%sub searchinfo() 如果是新查询if request("search")"1" thensession("sessionok")""end if 如果不…...

    2023/4/16 8:00:31
  6. asp+存储过程的使用

    在ASP中调用存储过程 <!-- 必须加载adovbs.inc文件&#xff0c;否则将出错 --><!--#include file"adovbs.inc"--><%dim objCnndim objCmddim Rsconst o_id112 -----建立Connection对象----------set objCnnServer.CreateObject("Adodb.connect…...

    2023/4/16 8:00:30
  7. ASP六大对象介绍

    ASP六大对象介绍 一、Application对象 Application对象是个应用程序级的对象&#xff0c;用来在所有用户间共享信息&#xff0c;并可以在Web应用程序运行期间持久地保持数据。Application的属性&#xff1a;  方法如下&#xff1a;   Application对象没有内置的属性&#…...

    2023/4/16 8:00:29
  8. c#中在DataGrid里创建一个弹出式窗口------可实现源代码

    在DataGrid中创建一个弹出式窗口 这篇文章来自DotNetJunkie的提议。他最初写信要求我们提供一个关于如何创建在DataGrid 中使用HyperLinkColumn的例子&#xff0c;可以在用户点击这一列后打开一个新窗口&#xff0c;显示出此列的详细内容。在此之前我们曾经通过email回答他们&a…...

    2023/4/16 8:00:28
  9. 加强对的asp学习,唉,,,没办法,为了吃饭呀!!

    ASP教程涉及到Len()、Fix()和Mid()三个函数&#xff0c;重点是Mid()函数的用法。这3个函数的用法请见VBScript函数手册&#xff0c;在此再简单介绍一下&#xff1a;Len()&#xff0c;返回字符串中的字符数目&#xff0c;例如Len("webshu")6&#xff1b;Fix()&#xf…...

    2023/4/16 8:00:25
  10. 加强asp学习1

    读取记录 今天要学习的内容有一点枯燥&#xff0c;但是很重要。在这里大家不需要知道命令具体的运行情况&#xff0c;外面的很多书籍之所以不适合入门就是因为介绍了太多的理论知识&#xff0c;让初学者一头雾水。 下面开门见山&#xff0c;看两句话&#xff1a; <% set con…...

    2023/4/16 8:00:24
  11. 加强asp学习2

    数据库的基本操作无非是&#xff1a;查询记录&#xff0c;写入记录&#xff0c;删除记录&#xff0c;修改记录。今天我们先学习写入记录。 先建立一个表单&#xff1a; <form name"form1" method"post" action"example5.asp"> name <in…...

    2023/4/16 8:00:23
  12. 加强asp学习3

    开门见山&#xff0c;大家直接看程序。 exec"delete * from guestbook where id"&request.form("id") 上面这句话完成了删除记录的操作&#xff0c;不过锁定记录用了记录唯一的表示id&#xff0c;我们前面建立 数据库的时候用的是系统给我们的主键&…...

    2023/4/16 8:00:22
  13. asp上传文件或图片

    当在一个form里需要执行resquest.conntent时不能与上传图片的功能同时放在同一个form里&#xff0c;最有效的解决方案是使用两个form,调用两个action,这样不容易出现二进制与content组建冲突。实现代码如下&#xff1a;<form method"post" action"submit4.as…...

    2023/4/16 8:00:21
  14. 将人民币的数字转化成大写表示 [asp]

    <%call Money(1605893.21) function Money(thenumber)dim Money,i,String1,String2,length,checkp定义变量dim one(),onestr()定义数组 String1 "零壹贰叁肆伍陆柒捌玖"String2 "万仟佰拾亿仟佰拾万仟佰拾元角分厘毫" checkpinstr(thenumber,".…...

    2023/4/16 8:00:20
  15. 字符转换与反转换函数

    今天在逛论坛时发现很多人都在问有关在textarea中输入的回车在html中不能显示的问题&#xff0c;可能这些朋友还不知道在文本中和html中显示回车的方式是不同的&#xff0c;因此我找了以下两个函数供大家参考&#xff1a; 1.HTMLEncode函数&#xff1a;除了server.htmlencode的…...

    2023/4/16 8:00:19
  16. 在ASP.NET中动态创建柱状图和饼图

    在应用程序开发中&#xff0c;我们会经常遇到把从数据源动态取回的数据用统计图表现出来&#xff0c;在Microsoft.NETFramework出现之前&#xff0c;我们采取的方法主要是编写组件来完成这一任务。现在&#xff0c;利用Microsoft.NETFramework提供的丰富的GDI类和对象可以很轻松…...

    2023/4/16 8:00:16
  17. 数据库备份与恢复的存储过程

    if exists(select * from sysobjectswhere namepr_backup_db and xtypep)begindrop proc pr_backup_dbend go /*备份数据库*/create proc pr_backup_dbflag varchar(10) out,backup_db_name varchar(128),filename varchar(1000) --路径&#xff0b;文件名字asdeclare sql nv…...

    2023/4/16 8:00:14
  18. 数据库的备份与恢复的存储过程

    if exists (select * from dbo.sysobjects where id object_id(N[dbo].[p_backupdb]) and OBJECTPROPERTY(id, NIsProcedure) 1)drop procedure [dbo].[p_backupdb]GO/*--备份数据库的通用存储过程/*--调用示例--备份当前数据库exec p_backupdb bkpathc:/,bkfname/DBNAME/_…...

    2023/4/16 8:00:13
  19. fso对象完成对硬盘文件的处理

    whichfileServer.MapPath("abandonship.txt") 得到文件名Set fso CreateObject("Scripting.FileSystemObject") 定义fso对象Set f1 fso.CreateTextFile(whichfile,true)f1.Write ("This is a test.My Name is abandonship.")f1.CloseSet f2 f…...

    2023/4/16 8:00:12
  20. 页面计数器改进版,刷新页面无效

    首先呢&#xff0c;先要做几个张图&#xff0c;这里用的是比较本的方法&#xff0c;呵呵没有用body.fix这文件,所以需要调用数字图的方法了&#xff0c;在这里就不多说这个了&#xff0c;建一个文件夹名为counter并将0-9这是个数字图放到里面&#xff0c;另在里面创建一个记事本…...

    2023/4/16 8:00:11
  21. asp常用所有函数

    1.函数array()  功能:创建一个数组变量  格式:array(list)  参数:list 为数组变量中的每个数值列,中间用逗号间隔  例子:  <% i  array ("1","2","3") %>  结果: i 被赋予为数组  2.函数Cint()  功能:将一表达式/其它类型…...

    2023/4/16 8:00:10
  22. VB.NET上传文件

    利用VB.NET向服务器上传文件 文件上传技术是一个很实用的技术&#xff0c;有着很广泛的应用&#xff0c;在ASP.NET自身的前一个版本ASP里实现这个功能&#xff0c;就必须使用第三方的组件或者自己开发组件了&#xff0c;现在&#xff0c;用ASP.NET实现起来就简单得多了&#xf…...

    2023/4/16 8:00:09
  23. 使用当前日期做为流水号,采用函数

    <% 将当前的日期和时间转为流水号 function makefilename(fname) fname now() fname replace(fname,"-","") fname replace(fname," ","") fname replace(fname,":","") fname replace(fname,"PM&q…...

    2023/4/16 8:00:08
  24. 在ASP.NET中动态创建柱状图和饼图

    在应用程序开发中&#xff0c;我们会经常遇到把从数据源动态取回的数据用统计图表现出来&#xff0c;在Microsoft.NETFramework出现之前&#xff0c;我们采取的方法主要是编写组件来完成这一任务。现在&#xff0c;利用Microsoft.NETFramework提供的丰富的GDI类和对象可以很轻松…...

    2023/4/16 8:00:07
  25. asp.net常用函数

    Abs(number)取得数值的绝对值。Asc(String)取得字符串表达式的第一个字符ASCII码。Atn(number)取得一个角度的反正切值。CallByName(object,procname,usecalltype,[args()])执行一个对象的方法、设定或传回对象的属性。CBool(expression)转换表达式为Boolean型态。CByte(expres…...

    2023/4/16 8:00:05
  26. PostgreSQL7.0手册-教程 -69. SQL-----(转载)

    SQL 已经成为了最流行的关系查询语言。SQL”的名称是Structured Query Language&#xff08;结构化查询语言&#xff09;的缩写。在 1974 年&#xff0c;Donald Chamberlin 和其他人在 IBM 的研究所定义了语言 SEQUEL &#xff08;Structured English Query Lang…...

    2023/4/16 8:00:04
  27. asp使用组件在线发邮件的多种方法

    一、jmail.smtpmail的核心代码: <% Set jmail Server.CreateObject("JMAIL.SMTPMail") 创建一个JMAIL对象 jmail.silent true JMAIL不会抛出例外错误&#xff0c;返回的值为FALSE跟TRUE jmail.logging true 启用使用日志 jmail.Charset "GB2312" 邮…...

    2023/4/16 8:00:03
  28. asp动态生成excel文件

    <!-- #include virtual"inc/conn.asp" --><%##################实现将动态生成excel表格&#xff0c;并将内容一并写入#############################################Code CreateBy guofeng#####################################%><HTML><HEA…...

    2023/4/16 8:00:02
  29. 禁止右键访问----破解与攻防

    要禁止访问者查看网页源代码&#xff0c;我们首先要了解一下查看源代码的方式(以IE 5.0为例)。一是右键菜单方式; 二是窗口菜单栏查看方式&#xff0c;即选择"查看"*"源文件"方式。要彻底禁止访问者查看网页源代码&#xff0c;就必须屏蔽这2种查看源代码的…...

    2023/4/16 8:00:01
  30. 使用ABCUpload4.XForm组件上传文件

    #################使用ABCUpload4.XForm组件上传文件########################################Code CreateBy guofeng#########################Response.Expires -10000Server.ScriptTimeOut 300Set theForm Server.CreateObject("ABCUpload4.XForm")theForm.Ov…...

    2023/4/16 7:59:59

最新文章

  1. asp定义的数连接串

    在ASP中连接数据库一、存取数据库的原理 在ASP中&#xff0c;用来存取数据库的对象统称ADO对象&#xff08;Active Data Objects&#xff09;&#xff0c;主要含有三种对象&#xff1a;Connection、Recordset和Command&#xff0c;其中Connection负责打开或连接数据库&#xff…...

    2023/4/16 8:00:36
  2. 用asp编写验证码

    <div align"center"><font size"2">校验码 <%for i1 to 4Randomizernumint(rnd()*35)1str"0123456789abcdefghijkLmnopqrstuvwxyz"selectstrselectstr&mid(str,rnum,1)nextfor i1 to 4 imgnamemid(selectstr,i,1) %><…...

    2023/4/16 8:00:35
  3. 在asp编程中trim函数的详述及漏洞破解与防护

    在asp编程中&#xff0c;我们常常使用trim(rtrim,ltrim)函数去掉一些数据的开头和结尾的空格&#xff0c;笔者最近写了一个asp聊天室&#xff0c;有下面的一段代码&#xff1a;  <% dim name,title  nametrim(request.form("name"))  passwordtrim(request.f…...

    2023/4/16 8:00:34
  4. c#中DataList的使用

    DataList控件的应用中。可以处理用户点击事件。在aspx代码中&#xff1a;<asp:DataList id"datalist2".......加入OnItemCommand "DataList_ItemCommand"然后加入下面的C#代码&#xff1a;void BindList()DataList2用{string commstr "select * …...

    2023/4/16 8:00:33
  5. asp中建立搜索的不同方法

    searchfunction&#xff1a;<meta http-equiv"Content-Type" content"text/html; charsetgb2312"><%sub searchinfo() 如果是新查询if request("search")"1" thensession("sessionok")""end if 如果不…...

    2023/4/16 8:00:31
  6. asp+存储过程的使用

    在ASP中调用存储过程 <!-- 必须加载adovbs.inc文件&#xff0c;否则将出错 --><!--#include file"adovbs.inc"--><%dim objCnndim objCmddim Rsconst o_id112 -----建立Connection对象----------set objCnnServer.CreateObject("Adodb.connect…...

    2023/4/16 8:00:30
  7. ASP六大对象介绍

    ASP六大对象介绍 一、Application对象 Application对象是个应用程序级的对象&#xff0c;用来在所有用户间共享信息&#xff0c;并可以在Web应用程序运行期间持久地保持数据。Application的属性&#xff1a;  方法如下&#xff1a;   Application对象没有内置的属性&#…...

    2023/4/16 8:00:29
  8. c#中在DataGrid里创建一个弹出式窗口------可实现源代码

    在DataGrid中创建一个弹出式窗口 这篇文章来自DotNetJunkie的提议。他最初写信要求我们提供一个关于如何创建在DataGrid 中使用HyperLinkColumn的例子&#xff0c;可以在用户点击这一列后打开一个新窗口&#xff0c;显示出此列的详细内容。在此之前我们曾经通过email回答他们&a…...

    2023/4/16 8:00:28
  9. 加强对的asp学习,唉,,,没办法,为了吃饭呀!!

    ASP教程涉及到Len()、Fix()和Mid()三个函数&#xff0c;重点是Mid()函数的用法。这3个函数的用法请见VBScript函数手册&#xff0c;在此再简单介绍一下&#xff1a;Len()&#xff0c;返回字符串中的字符数目&#xff0c;例如Len("webshu")6&#xff1b;Fix()&#xf…...

    2023/4/16 8:00:25
  10. 加强asp学习1

    读取记录 今天要学习的内容有一点枯燥&#xff0c;但是很重要。在这里大家不需要知道命令具体的运行情况&#xff0c;外面的很多书籍之所以不适合入门就是因为介绍了太多的理论知识&#xff0c;让初学者一头雾水。 下面开门见山&#xff0c;看两句话&#xff1a; <% set con…...

    2023/4/16 8:00:24
  11. 加强asp学习2

    数据库的基本操作无非是&#xff1a;查询记录&#xff0c;写入记录&#xff0c;删除记录&#xff0c;修改记录。今天我们先学习写入记录。 先建立一个表单&#xff1a; <form name"form1" method"post" action"example5.asp"> name <in…...

    2023/4/16 8:00:23
  12. 加强asp学习3

    开门见山&#xff0c;大家直接看程序。 exec"delete * from guestbook where id"&request.form("id") 上面这句话完成了删除记录的操作&#xff0c;不过锁定记录用了记录唯一的表示id&#xff0c;我们前面建立 数据库的时候用的是系统给我们的主键&…...

    2023/4/16 8:00:22
  13. asp上传文件或图片

    当在一个form里需要执行resquest.conntent时不能与上传图片的功能同时放在同一个form里&#xff0c;最有效的解决方案是使用两个form,调用两个action,这样不容易出现二进制与content组建冲突。实现代码如下&#xff1a;<form method"post" action"submit4.as…...

    2023/4/16 8:00:21
  14. 将人民币的数字转化成大写表示 [asp]

    <%call Money(1605893.21) function Money(thenumber)dim Money,i,String1,String2,length,checkp定义变量dim one(),onestr()定义数组 String1 "零壹贰叁肆伍陆柒捌玖"String2 "万仟佰拾亿仟佰拾万仟佰拾元角分厘毫" checkpinstr(thenumber,".…...

    2023/4/16 8:00:20
  15. 字符转换与反转换函数

    今天在逛论坛时发现很多人都在问有关在textarea中输入的回车在html中不能显示的问题&#xff0c;可能这些朋友还不知道在文本中和html中显示回车的方式是不同的&#xff0c;因此我找了以下两个函数供大家参考&#xff1a; 1.HTMLEncode函数&#xff1a;除了server.htmlencode的…...

    2023/4/16 8:00:19
  16. 在ASP.NET中动态创建柱状图和饼图

    在应用程序开发中&#xff0c;我们会经常遇到把从数据源动态取回的数据用统计图表现出来&#xff0c;在Microsoft.NETFramework出现之前&#xff0c;我们采取的方法主要是编写组件来完成这一任务。现在&#xff0c;利用Microsoft.NETFramework提供的丰富的GDI类和对象可以很轻松…...

    2023/4/16 8:00:16
  17. 数据库备份与恢复的存储过程

    if exists(select * from sysobjectswhere namepr_backup_db and xtypep)begindrop proc pr_backup_dbend go /*备份数据库*/create proc pr_backup_dbflag varchar(10) out,backup_db_name varchar(128),filename varchar(1000) --路径&#xff0b;文件名字asdeclare sql nv…...

    2023/4/16 8:00:14
  18. 数据库的备份与恢复的存储过程

    if exists (select * from dbo.sysobjects where id object_id(N[dbo].[p_backupdb]) and OBJECTPROPERTY(id, NIsProcedure) 1)drop procedure [dbo].[p_backupdb]GO/*--备份数据库的通用存储过程/*--调用示例--备份当前数据库exec p_backupdb bkpathc:/,bkfname/DBNAME/_…...

    2023/4/16 8:00:13
  19. fso对象完成对硬盘文件的处理

    whichfileServer.MapPath("abandonship.txt") 得到文件名Set fso CreateObject("Scripting.FileSystemObject") 定义fso对象Set f1 fso.CreateTextFile(whichfile,true)f1.Write ("This is a test.My Name is abandonship.")f1.CloseSet f2 f…...

    2023/4/16 8:00:12
  20. 页面计数器改进版,刷新页面无效

    首先呢&#xff0c;先要做几个张图&#xff0c;这里用的是比较本的方法&#xff0c;呵呵没有用body.fix这文件,所以需要调用数字图的方法了&#xff0c;在这里就不多说这个了&#xff0c;建一个文件夹名为counter并将0-9这是个数字图放到里面&#xff0c;另在里面创建一个记事本…...

    2023/4/16 8:00:11
  21. asp常用所有函数

    1.函数array()  功能:创建一个数组变量  格式:array(list)  参数:list 为数组变量中的每个数值列,中间用逗号间隔  例子:  <% i  array ("1","2","3") %>  结果: i 被赋予为数组  2.函数Cint()  功能:将一表达式/其它类型…...

    2023/4/16 8:00:10
  22. VB.NET上传文件

    利用VB.NET向服务器上传文件 文件上传技术是一个很实用的技术&#xff0c;有着很广泛的应用&#xff0c;在ASP.NET自身的前一个版本ASP里实现这个功能&#xff0c;就必须使用第三方的组件或者自己开发组件了&#xff0c;现在&#xff0c;用ASP.NET实现起来就简单得多了&#xf…...

    2023/4/16 8:00:09
  23. 使用当前日期做为流水号,采用函数

    <% 将当前的日期和时间转为流水号 function makefilename(fname) fname now() fname replace(fname,"-","") fname replace(fname," ","") fname replace(fname,":","") fname replace(fname,"PM&q…...

    2023/4/16 8:00:08
  24. 在ASP.NET中动态创建柱状图和饼图

    在应用程序开发中&#xff0c;我们会经常遇到把从数据源动态取回的数据用统计图表现出来&#xff0c;在Microsoft.NETFramework出现之前&#xff0c;我们采取的方法主要是编写组件来完成这一任务。现在&#xff0c;利用Microsoft.NETFramework提供的丰富的GDI类和对象可以很轻松…...

    2023/4/16 8:00:07
  25. asp.net常用函数

    Abs(number)取得数值的绝对值。Asc(String)取得字符串表达式的第一个字符ASCII码。Atn(number)取得一个角度的反正切值。CallByName(object,procname,usecalltype,[args()])执行一个对象的方法、设定或传回对象的属性。CBool(expression)转换表达式为Boolean型态。CByte(expres…...

    2023/4/16 8:00:05
  26. PostgreSQL7.0手册-教程 -69. SQL-----(转载)

    SQL 已经成为了最流行的关系查询语言。SQL”的名称是Structured Query Language&#xff08;结构化查询语言&#xff09;的缩写。在 1974 年&#xff0c;Donald Chamberlin 和其他人在 IBM 的研究所定义了语言 SEQUEL &#xff08;Structured English Query Lang…...

    2023/4/16 8:00:04
  27. asp使用组件在线发邮件的多种方法

    一、jmail.smtpmail的核心代码: <% Set jmail Server.CreateObject("JMAIL.SMTPMail") 创建一个JMAIL对象 jmail.silent true JMAIL不会抛出例外错误&#xff0c;返回的值为FALSE跟TRUE jmail.logging true 启用使用日志 jmail.Charset "GB2312" 邮…...

    2023/4/16 8:00:03
  28. asp动态生成excel文件

    <!-- #include virtual"inc/conn.asp" --><%##################实现将动态生成excel表格&#xff0c;并将内容一并写入#############################################Code CreateBy guofeng#####################################%><HTML><HEA…...

    2023/4/16 8:00:02
  29. 禁止右键访问----破解与攻防

    要禁止访问者查看网页源代码&#xff0c;我们首先要了解一下查看源代码的方式(以IE 5.0为例)。一是右键菜单方式; 二是窗口菜单栏查看方式&#xff0c;即选择"查看"*"源文件"方式。要彻底禁止访问者查看网页源代码&#xff0c;就必须屏蔽这2种查看源代码的…...

    2023/4/16 8:00:01
  30. 使用ABCUpload4.XForm组件上传文件

    #################使用ABCUpload4.XForm组件上传文件########################################Code CreateBy guofeng#########################Response.Expires -10000Server.ScriptTimeOut 300Set theForm Server.CreateObject("ABCUpload4.XForm")theForm.Ov…...

    2023/4/16 7:59:59
  31. 【ChatGPT】从零开始构建基于ChatGPT的嵌入式(Embedding) 本地(Local) 智能客服问答机器人模型

    目录 方案流程 1. Embeddings 介绍 术语&#xff1a;微调 vs 嵌入 一句话理解便是&#xff1a;embedding model 可以将文本转换为固定长度的连续向量。 架构流程图 3、Qdrant云数据库的搭建 3.1、初识Qdrant 3.2、创建云数据库 3.3、通过curl 接口访问 4、写入测试数…...

    2023/5/28 17:16:05
  32. 【ChatGPT】在20分钟内使用 LangChain + Ray构建自托管问答服务

    This is part 3 of a blog series. In this blog, we’ll show you how to build an LLM question and answering service. In future parts, we will optimize the code and measure performance: cost, latency and throughput. 这是博客系列的第 3 部分。在本博客中,我们将…...

    2023/5/28 15:14:53
  33. 【ChatGPT】Turbocharge LangChain: guide to 20x faster embedding | LangChain: 嵌入速度提高 20 倍的指南

    目录 Why do I need to parallelize this?为什么我需要并行化它? Stages of our Data Pipeline 数据管道的各个阶段 Execution...

    2023/5/28 15:06:52
  34. 最新ChatGPT GPT-4 相似匹配Embedding技术详解(附ipynb与python源码及视频讲解)——开源DataWhale发布入门ChatGPT技术新手从0到1必备使用指南手册(一)

    目录 前言最新ChatGPT GPT-4 相似匹配Embedding技术详解1. 何为Embedding2. 相关API2.1 LMAS Embedding API2.2 ChatGPT Style 3. Embedding应用3.1 QA3.2 聚类3.3 推荐 相关文献 参考资料其它资料下载 前言 如果您想提高ChatGPT中文本处理的效率和精度&#xff0c;那么Embedd…...

    2023/5/28 12:45:09
  35. ChatGPT的access_token获取(最新!!!)

    ChatGPT的access_token获取&#xff08;最新&#xff01;&#xff01;&#xff01;&#xff09; 序言 最近在搞移动应用开发&#xff0c;心血来潮写了个chatGPT的app&#xff0c;但是接口只能用官网提供的&#xff0c;我自己的号没有免费额度&#xff0c;朋友的号也就5$的额度…...

    2023/5/28 12:19:58
  36. 【ChatGPT】ChatGPT 在智能客服产品如何落地?

    目录 简介 智能客服产品的典型特征 人力密集: 数据密集: 流程可定义:...

    2023/5/28 12:15:11
  37. 【ChatGPT】ChatGPT使用指南——句词分类

    目录 ChatGPT使用指南——句词分类 1. NLU基础 1.1 句子级别的分类 1.2 Token级别的分类 2. 相关API...

    2023/5/28 11:56:24
  38. 【ChatGPT】技术原理:ChatGPT怎么工作?

    目录 简介:ChatGPT的工作原理概述 Transformer 架构原理...

    2023/5/28 10:39:46
  39. 【ChatGPT】ChatGPT基础科普——知其一点所以然

    目录 ChatGPT基础科普——知其一点所以然 语言的本质 从图灵测试到ChatGPT 1. LM 2. Transformer 3. GPT...

    2023/5/28 10:09:26
  40. ChatGPT使用指南——相似匹配

    目录 ChatGPT使用指南——相似匹配 1. 何为Embedding 2. 相关API 2.1 LMAS Embedding API 2.2 ChatGPT Style 3. Embedding应用...

    2023/5/28 8:55:00
  41. 【ChatGPT】使用 LangChain 和 Ray 实现 100 行代码构建 LLM 开源搜索引擎【1】

    目录 Introduction Building the index 构建索引 Accelerating indexing using Ray 使用 Ray 加速索引编制 Serving Conclusion...

    2023/5/28 8:53:34
  42. 【ChatGPT】ChatGPT使用指南——文本生成

    目录 ChatGPT使用指南——文本生成 1 引言 2 文本摘要任务 2.1 什么是文本摘要&#xff1f; 2.2 常见的文本摘要技术 2.3 基于OpenAI接口的文本摘要实验 3 文本纠错任务 3.1 什么是文本纠错&#xff1f; 3.2 常见的文本纠错技术 3.3 基于OpenAI接口的文本纠错实验 4…...

    2023/5/28 8:24:05
  43. ChatGPT商业应用——LLM是星辰大海

    目录 ChatGPT商业应用——LLM是星辰大海 1. 研究背景 1.1 研究背景 1.2 研究方法...

    2023/5/28 7:59:04
  44. 国内可直接访问ChatGPT体验站,已稳定2个月 (域名被拦截解决方案)

    新体验地址&#xff1a;https://zizhu888.cn/chatgpt/index.html ChatGPT体验站3月初上线&#xff0c;上线后&#xff0c;PV最高时3000&#xff0c;UV2000&#xff0c;付费用户有小300个 上线后&#xff0c;前前后后遇到了不少坑爹问题&#xff0c;下面是最近PV访问曲线图&am…...

    2023/5/28 7:33:09
  45. AIGC——使用Cursor对比直接使用chatGPT有哪些技巧

    Cursor对比直接使用chatGPT有哪些优势 1. 聊聊it团队经常面临的问题2. 试想一些AI辅助的应用场景3. 看回现实可用的工具及其使用3.1 加载文件作为对话上下文3.2 源码工程辅助阅读3.3 批量文件式输入口3.4 规范核查工具 4 通用思路4.1 提供解决方案思路4.2 借助chatGPT构建全流程…...

    2023/5/28 4:27:19
  46. ChatGPT中文版Prompt提示工程超详细指南《提示工程高级技巧与技术》Github最新破万星项目Meta AI前工程师解密百万年薪提示工程师GPT-4模型优化利器(二)不定期更新

    提示工程高级技巧与技术 前言Introduction 导言零样本提示少样本提示少样本提示的限制 Chain-of-Thought Prompting 链式思考&#xff08;CoT&#xff09;提示零样本COT提示 Zero-shot COT 自我一致性生成知识提示自动提示工程师&#xff08;APE&#xff09;Active-Prompt方向性…...

    2023/5/28 0:42:10
  47. 【ChatGPT】ChatGPT使用指南——文本推理

    目录 ChatGPT使用指南——文本推理 1. 什么是推理(Reasoning)? 2. 导入ChatGPT 3. 测试ChatGPT的推理能力...

    2023/5/27 23:40:23
  48. ChatGPT免费使用的方法有哪些?

    目录 一、ChatGpt是什么&#xff1f; 二、ChatGPT国内免费使用的方法&#xff1a; 第一点&#xff1a;电脑端 第二点&#xff1a;手机端 三、结语&#xff1a; 一、ChatGpt是什么&#xff1f; ChatGPt是美国OpenAI [1] 研发的聊天机器人程序 。更是人工智能技术驱动的自然语…...

    2023/5/27 23:37:06
  49. 用ChatGPT辅助处理Excel

    在日常工作中&#xff0c;我们经常需要处理大量的Excel表格&#xff0c;而在处理Excel表格时&#xff0c;常常会遇到重复、冗余、不清晰的数据等问题&#xff0c;导致我们耗费大量的时间和精力。 在这种情况下&#xff0c;现代技术的应用提供了更加高效的解决方案&#xff0c;…...

    2023/5/27 18:32:31
  50. Pycharm安装ChatGPT插件

    文章目录 前言一、安装ChatGPT插件二、使用步骤1.打开NexChatGPT2.发送请求 总结 前言 通过安装ChatGPT插件&#xff0c;您可以在PyCharm中更轻松、高效地使用ChatGPT模型进行开发&#xff0c;从而提高您的工作效率和准确性。 一、安装ChatGPT插件 打开PyCharm&#xff0c;单…...

    2023/5/27 17:28:47
  51. 它来了!ios版ChatGPT

    ChatGPT 的 iOS 版终于来了&#xff0c;不过目前只支持 iOS 美丽国区&#xff0c;你需要使用美丽国区账号才能下载使用。 目录 前提使用总结 前提 一部苹果手机一个美丽国苹果账号一个可以正常访问ChatGPT网页版的网络环境一个ChatGPT账号 使用 登录准备好的美丽国苹果账号。…...

    2023/5/27 10:28:02
  52. 好用的IntelliJ IDEA ChatGPT插件:NexChatGPT

    随着ChatGPT的爆火&#xff0c;ChatGPT给我们的生产生活带来一定的影响&#xff0c;ChatGPT相关的工具插件潮水般的涌现。ChatGPT对IT的影响也不小&#xff0c;尤其是自动化编程&#xff0c;今天介绍几款IntelliJ IDEA中ChatGPT插件。 一、NexChatGPT NexChatGPT是一款开箱即…...

    2023/5/27 0:48:49
  53. 2023小狐狸ChatGPT源码1.9小程序 带绘画 带分销流量主系统智能客服AI源码+教程

    2023全开源ChatGPT微信小程序&#xff0c;狐狸版本1.9&#xff0c;5.12已更新&#xff0c;增加绘画功能&#xff0c;带流量主带付费购买次数&#xff0c;可邀请好友获得问答次数 看广告获得问答次数 付费购买获得问答次数 狐狸版号1.9&#xff08;最 新版&#xff09;&#xf…...

    2023/5/26 17:51:14
  54. 【国内chatgpt使用方法合集】(5月26日已更新)

    写在前面 Hello大家好&#xff0c; 我是【麟-小白】&#xff0c;一位软件工程专业的学生&#xff0c;喜好计算机知识。希望大家能够一起学习进步呀&#xff01;本人是一名在读大学生&#xff0c;专业水平有限&#xff0c;如发现错误或不足之处&#xff0c;请多多指正&#xff0…...

    2023/5/26 17:44:47
  55. 【ChatGPT】GPT-5 下一代:即将到来的7种能力将改变人工智能和技术的未来 | OpenAI

    GPT-5 下一代:即将到来的7种能力将改变人工智能和技术的未来 | OpenAI 文章目录 GPT-5 下一代:即将到来的7种能力将改变人工智能和技术的未来 | OpenAI第一:扩展多模式理解。第二:交互式多媒体。第三:为具备一般能力的机器人提供动力。第四:自主人工智能模型开发。第五:…...

    2023/5/26 11:55:09
  56. 玩转ChatGPT:论文辅助写作(附Claude测评)

    一、写在前面 嘿&#xff01;嘿&#xff01;嘿&#xff01;大家好&#xff0c;今天我们来聊一下使用GPT们进行论文辅助写作。不过&#xff0c;我要先交代一下&#xff0c;GPT的使用门槛比较高&#xff0c;不少童鞋都用不上。所以&#xff0c;我极力推荐一个平替产品——Claude…...

    2023/5/26 11:26:08
  57. [持续更新]使用chatgpt的几种方法~

    1. monica 使用edge浏览器或者chrome浏览器&#xff0c;直接在官网下载即可&#xff0c;网址直通&#xff1a; bing: https://www.microsoft.com/zh-cn/edge/download?formMA13FJ google&#xff1a; Google Chrome 网络浏览器 备注&#xff1a;你需要先搭上梯子哈 安装打…...

    2023/5/26 10:39:41
  58. 苹果手机爽了!一招搞定ChatGPT Plus,超级稳!

    大家好&#xff0c;我是五竹。 昨天用苹果手机尝试了一下&#xff0c;借助App Store&#xff08;苹果应用商店&#xff09;升级 Plus&#xff0c;成功了&#xff01;一共升级了三个号&#xff01;有两个一气呵成&#xff0c;轻松搞定。最后一个可能触发风控了&#xff0c;但第…...

    2023/5/26 9:58:09
  59. ChatGPT账号注册,为什么总是提示Access Denied you do not have acces

    问题&#xff1a;提示Access denied 无法登录登录的时候&#xff0c;提示Access denied,You do not have access to chat.openai.com.原因登录出现这个界面&#xff0c;说明你的IP被OpenAI拉黑了&#xff0c;OpenAI对比较频繁访问的云主机商屏蔽了相关的IP出口段&#xff0c;所…...

    2023/5/26 9:00:56
  60. ChatGPT 的 AskYourPDF 插件所需链接如何获取?

    一、背景 目前 ChatGPT 主要有两款 PDF 对话插件&#xff0c;一个是 AskYourPDF 一个是 ChatWithPDF&#xff08;需 ChatGPT Plus&#xff09;&#xff0c;他们都可以实现给一个公共的PDF 链接&#xff0c;然后进行持续对话&#xff0c;对读论文&#xff0c;阅读 PDF 格式的文…...

    2023/5/26 8:27:01