- Java基础知识三(运算符)
浪迹天涯的贺
Java基础系列上java开发语言
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档前言更新第三篇文章,这篇文章讲一下Java的运算符相关的知识,对于Java中所有的运算符的种类和内容做一个总结在Java编程中,运算符(Operators)是执行特定操作的符号,它们用于操作变量和数据。本文将详细介绍Java中的运算符种类、用法以及其作用。1.算术运算符(ArithmeticOperators)算术运算符用于执行基本的
- MNIST数据集&手写数字识别
Zoro|
kerastensorflow人工智能机器学习
TensorFlow是一个开源的机器学习框架,由Google开发并发布。它提供了一种基于数据流图的编程模型,用于构建和训练机器学习模型。TensorFlow的核心概念是张量(Tensor)和流图(Graph)。张量是TensorFlow中的基本数据单位,可以理解为多维数组,可以是标量、向量、矩阵或更高维度的数组。流图是由一系列操作(Operation)和张量组成的。操作定义了计算和转换张量的方式。
- 《Operating System Concepts》阅读笔记:p359-p388
操作系统
《OperatingSystemConcepts》学习第32天,p359-p388总结,总计30页。一、技术总结1.paging(1)定义Acommonmemorymanagementschemethatavoidsexternalfragmentationbysplittingphysicalmemoryintofixed-sizedframesandlogicalmemoryintoblock
- 《Operating System Concepts》阅读笔记:p389-p407
操作系统
《OperatingSystemConcepts》学习第33天,p389-p407总结,总计19页。一、技术总结1.virtualmemeory(1)定义Atechniquethatallowstheexecutionofaprocessthatisnotcompletelyinmemory.Also,separationofcomputermemoryaddressspacefromphysic
- 【CXX】6.11 函数指针
Source.Liu
CXXrustc++CXX
公共API://rust/cxx.htemplateclassFn;templateclassFnfinal{public:Retoperator()(Args...args)constnoexcept;Fnoperator*()constnoexcept;};限制:返回类型为Result的函数指针尚未实现。从C++向Rust传递函数指针尚未实现,目前仅支持从Rust向extern“C++”函数传
- 《Operating System Concepts》阅读笔记:p354-p358
操作系统
《OperatingSystemConcepts》学习第31天,p354-p358总结,总计5页。一、技术总结1.logicaladdress&virtualaddressBindingaddressesateithercompileorloadtimegeneratesidenticallogicalandphysicaladdresses.However,theexecution-timead
- 《Operating System Concepts》阅读笔记:p331-p353
操作系统
《OperatingSystemConcepts》学习第30天,p331-p353总结,总计23页。一、技术总结1.lockdep工具2.claimedge3.banker'salgorithmAdeadlockavoidancealgorithm,lessefficientthantheresource-allocationgraphschemebutabletodealwithmultiple
- C++(初阶)(六)——内存管理
win水
c++
内存管理内存管理C/C++**内存分布C语言中动态内存管理方式C++内存管理方式new/delete操作内置类型new和delete操作自定义类型new和mallocoperatornew与operatordeletenew和delete的实现原理内置类型自定义类型C/C++**内存分布intglobalVar=1;staticintstaticGlobalVar=1;voidTest(){sta
- 【C++修炼之路】C++动态内存管理
f狐0狸x
【c++修炼之路】c++开发语言c语言数据结构
️专栏:【C++修炼之路】主页:f狐o狸x“于高山之巅,方见大河奔涌;于群峰之上,更觉长风浩荡”目录一、C++内存管理方式1.1new/delete处理内置类型1.2new/delete处理自定义类型二、operatornew与operatordelete函数三、new和delete的实现原理3.1内置类型3.2自定义类型new的原理delete的原理newT[N]的原理delete[]的原理C
- prometheus-helm的使用
weixin_43806846
prometheus
1、部署Prometheus监控平台1、下载安装Prometheus(当前集群版本1.26.3)gitclonehttps://github.com/prometheus-operator/kube-prometheus.git-brelease-0.12安装:cdkube-prometheus/创建命名空间和crd:kubectlapply--server-side-fmanifests/set
- html css 笔记
小箌
htmlcss笔记
01_浏览器相关知识五大主流浏览器:ChromeSafariIEFirefoxOpera(拥有自己的内核)四大内核:webkitTridentGeckoblink.02_网页相关知识构成网址网站网页网页标准:结构表现行为分别对应HTMLCSSJavaScript03_HTML简介HTML是什么译为:标记语言超文本:比普通的文本信息含量更多04_HTML初体验保存:Ctrl+S后缀:.html程序员
- 第5章 构造、析构、拷贝语义学3:对象复制语意学
qq_40178082
深入探索C++对象模型java开发语言
重点:编译器生成构造函数的四种情况,如何避免copyconstructor在子类多个调用当我们指定一个classobject给另一个classobject时,通常有三种选择:什么都不做,实施默认的行为。提供一个explicitcopyassignmentoperator。显式地拒绝指定一个classobject给另一个classobject,声明为private(并且此时不同函数的定义,一旦某个m
- 《Operating System Concepts》阅读笔记:p286-p308
操作系统
《OperatingSystemConcepts》学习第28天,p286-p308总结,总计23页。一、技术总结1.reentrantlock(可重入锁)(1)为什么称为reentrantlock?AthreadacquiresaReentrantLocklockbyinvokingitslock()method.Ifthelockisavailable—orifthethreadinvoking
- 【项目实战】前后端分离实现通用上传接口到不同存储桶
本本本添哥
001-基础开发能力javaservlet前端
一、定义通用上传接口通过上传接口(UploadFileController.java)上传文件/***上传文件*@parammulFile*@paramdir文件存放目录*@paramfileType文件类型image:图片*@return*/@ApiOperation(value="上传文件")@PostMapping("/upload")public
- 【CXX】6.8 Vec<T> — rust::Vec<T>
Source.Liu
CXXrustCXXc++
rust::Vec公共API://rust/cxx.htemplateclassVecfinal{public:usingvalue_type=T;Vec()noexcept;Vec(std::initializer_list);Vec(constVec&);Vec(Vec&&)noexcept;~Vec()noexcept;Vec&operator=(Vec&&)&noexcept;Vec&op
- java Stream API中的聚合操作
27xixi
javajava18
聚合操作是指对一组数据进行处理,最终生成一个单一的结果。在编程中,聚合操作通常用于对集合(如列表、数组等)中的元素进行统计、计算或汇总。常见的聚合操作包括求和、求平均值、查找最大值/最小值、计数等。在Java的StreamAPI中,聚合操作是通过终端操作(TerminalOperations)来实现的。以下是一些常见的聚合操作及其用法:1.求和(Sum)对集合中的元素进行求和。示例:求整数列表的和
- pytorch训练权重转化为tensorflow模型的教训
小枫小疯
深度学习部署模型转移pytorchtensorflow人工智能
模型构建时候有时候在工程量比较大的时候,不可避免使用迭代算法,迭代算法本身会让错误的追踪更加困难,因此掌握基本的框架之间的差异非常重要。以下均是在模型转换过程中出现的错误。shuffleoperation(shuffle操作)这个操作原本是用来将各个通道之间的信息进行打乱后,此时面临重要的问题就是,如果将通道打乱,在pytorch里面与tensorflow中间,两种通道排序是不一样的,是采用不同的
- 第三十个问题-讲讲Agent、MCP、OpenAI Responses API
释迦呼呼
AI一千问人工智能语言模型机器学习深度学习自然语言处理
1.Agent(智能体)136定义与核心功能Agent是什么:能够自主执行复杂任务的智能实体,通常基于大语言模型(LLM)构建,配备指令和工具,可独立完成多步骤任务(如网络搜索、文件处理、自动化操作等)18。应用场景:客服自动化、法律文档检索、代码审查、数据输入、股票分析等36。OpenAI的Agent生态:DeepResearch:自动生成带引用的研究报告。Operator:通过控制浏览器光标执
- 一文教你学会Java Stream API 常用函数
小健学 Java
javapythonwindows
1.什么是Stream?Java8引入了StreamAPI,提供了一种声明式编程方式,使数据处理更加简洁、易读。Stream是一个数据流,它不存储数据,而是从数据源(如集合、数组等)获取数据并进行一系列操作。StreamAPI主要有两大类操作:中间操作(IntermediateOperations):返回新的Stream,可链式调用。终端操作(TerminalOperations):触发Strea
- ROS中的三维占用网格地图与八叉树地图详尽解析
YRr YRr
ros地图
ROS中的三维占用网格地图与八叉树地图详尽解析在机器人自主导航与环境感知领域,地图构建与表示是核心技术之一。不同的三维地图表示方法在精度、效率、存储需求等方面各有优劣,直接影响机器人在复杂环境中的表现。本文将以ROS(RobotOperatingSystem,机器人操作系统)为背景,深入探讨两种常用的三维地图表示方法——三维占用网格地图(OccupancyGridMap,简称OGM)和八叉树地图(
- 全局路径规划器:full_coverage_path_planner完全指南
段钰忻
全局路径规划器:full_coverage_path_planner完全指南项目地址:https://gitcode.com/gh_mirrors/fu/full_coverage_path_planner项目介绍full_coverage_path_planner是一个在ROS(RobotOperatingSystem)环境下开发的开源全局路径规划算法实现,旨在提供全面覆盖的路径规划解决方案。该
- 让 Deepseek 写一个计算器(网页)
—Qeyser
HtmlJavaScript前端javascriptDeepseekaichatgpt
完整代码简单计算器body{font-family:Arial,sans-serif;display:flex;justify-content:center;align-items:center;height:100vh;background-color:#f4f4f4;}.calculator{background-color:#fff;padding:20px;border-radius:10
- 《Operating System Concepts》阅读笔记:p309-p330
操作系统
《OperatingSystemConcepts》学习第29天,p309-p330总结,总计22页。一、技术总结1.Python中的并发编程(1)semaphoreclassthreading.Semaphore(value=1)。(2)conditionvariableclassthreading.Condition(lock=None)书上使用的是Java,因本人在开发工作中使用的是Pytho
- 模拟类似 DeepSeek 的对话
二川bro
前端智能AI前端人工智能
以下是一个完整的JavaScript数据流式获取实现方案,模拟类似DeepSeek的对话式逐段返回效果。包含前端实现、后端模拟和详细注释:流式对话演示#output{border:1pxsolid#ccc;padding:20px;margin:20px;min-height:200px;font-family:monospace;white-space:pre-wrap;}.loading{di
- 什么是yocto(理清yocto poky openembedded bitbake间关系)
口袋物联
TIAM62x平台从入门到精通系列yoctoyoctopokybitbakeopenembedded
一基本概念TheYoctoProjectisanopen-sourceprojectthatdeliversasetoftoolsthatcreateoperatingsystemimagesforembeddedLinuxsystems.PokyisthereferenceoperatingsystemdistributionbuiltwithYoctoProjecttools,andOpenE
- 【Devops】DevOps and CI/CD Pipelines
一袋米扛几楼98
Devopsdevopsci/cd运维
1.什么是DevOps?DevOps是开发(Development)和运维(Operations)的结合,旨在缩短软件开发生命周期,同时交付高质量的软件。翻译:DevOps是一种结合开发和运维实践的方法,目标是缩短软件开发生命周期,同时确保软件的高质量交付。2.DevOps的关键原则协作:开发和运维团队之间的紧密合作。持续集成与持续交付(CI/CD):自动化代码集成和交付流程。自动化:自动化构建、
- C++8--赋值运算符重载
大胆飞猪
c++
1.运算符重载C++引入运算符的目的是为了增强代码的可读性。运算符重载是具有特殊函数名的函数,也具有其返回值类型,函数名字以及参数列表,其返回值类型与参数列表与普通的函数相似。函数名字为:关键字operator后面接需要重载的运算符符号函数原型:返回值类型operator操作符(参数列表)注意:不能通过连接其他符号来创建新的操作符:比如operator@重载操作符必须有一个类类型参数用于内置类型的
- C++14--内存管理(new delete)
大胆飞猪
c++
目录1.C++内存管理方式1.1new/delete操作内置类型1.2new和delete操作自定义类型2.operatornew与operatordelete函数3.new和delete的实现原理3.1内置类型3.2自定义类型4.定位new表达式(placement-new)5.malloc/free和new/delete的区别1.C++内存管理方式前言C语言内存管理在C++中可以继续使用,但是
- C++25--lambda表达式
大胆飞猪
c++
目录1.C++98中的一个例子2.lambda表达式3.lambda表达式语法4.函数对象与lambda表达式1.C++98中的一个例子templatestructgreater{booloperator()(Ta,Tb){returna>b;}};intmain(){intarray[]={4,1,8,5,3,7,0,9,2,6};//默认按照小于比较,排出来结果是升序std::sort(arr
- ROS机器人边缘计算:EdgeComputing与ROS
AI天才研究院
计算AI大模型应用入门实战与进阶大数据人工智能语言模型AILLMJavaPython架构设计AgentRPA计算AI大模型应用
1.背景介绍1.1机器人操作系统(ROS)机器人操作系统(RobotOperatingSystem,简称ROS)是一个用于机器人软件开发的灵活框架。它提供了一系列工具、库和约定,使得创建复杂且健壮的机器人应用变得更加容易。ROS的核心是一个消息传递系统,它允许不同的软件模块(称为节点)之间进行通信。这种模块化设计使得开发人员可以更容易地重用和共享代码,从而加速了机器人软件的开发过程。1.2边缘计算
- 分享100个最新免费的高匿HTTP代理IP
mcj8089
代理IP代理服务器匿名代理免费代理IP最新代理IP
推荐两个代理IP网站:
1. 全网代理IP:http://proxy.goubanjia.com/
2. 敲代码免费IP:http://ip.qiaodm.com/
120.198.243.130:80,中国/广东省
58.251.78.71:8088,中国/广东省
183.207.228.22:83,中国/
- mysql高级特性之数据分区
annan211
java数据结构mongodb分区mysql
mysql高级特性
1 以存储引擎的角度分析,分区表和物理表没有区别。是按照一定的规则将数据分别存储的逻辑设计。器底层是由多个物理字表组成。
2 分区的原理
分区表由多个相关的底层表实现,这些底层表也是由句柄对象表示,所以我们可以直接访问各个分区。存储引擎管理分区的各个底层
表和管理普通表一样(所有底层表都必须使用相同的存储引擎),分区表的索引只是
- JS采用正则表达式简单获取URL地址栏参数
chiangfai
js地址栏参数获取
GetUrlParam:function GetUrlParam(param){
var reg = new RegExp("(^|&)"+ param +"=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if(r!=null
- 怎样将数据表拷贝到powerdesigner (本地数据库表)
Array_06
powerDesigner
==================================================
1、打开PowerDesigner12,在菜单中按照如下方式进行操作
file->Reverse Engineer->DataBase
点击后,弹出 New Physical Data Model 的对话框
2、在General选项卡中
Model name:模板名字,自
- logbackのhelloworld
飞翔的马甲
日志logback
一、概述
1.日志是啥?
当我是个逗比的时候我是这么理解的:log.debug()代替了system.out.print();
当我项目工作时,以为是一堆得.log文件。
这两天项目发布新版本,比较轻松,决定好好地研究下日志以及logback。
传送门1:日志的作用与方法:
http://www.infoq.com/cn/articles/why-and-how-log
上面的作
- 新浪微博爬虫模拟登陆
随意而生
新浪微博
转载自:http://hi.baidu.com/erliang20088/item/251db4b040b8ce58ba0e1235
近来由于毕设需要,重新修改了新浪微博爬虫废了不少劲,希望下边的总结能够帮助后来的同学们。
现行版的模拟登陆与以前相比,最大的改动在于cookie获取时候的模拟url的请求
- synchronized
香水浓
javathread
Java语言的关键字,可用来给对象和方法或者代码块加锁,当它锁定一个方法或者一个代码块的时候,同一时刻最多只有一个线程执行这段代码。当两个并发线程访问同一个对象object中的这个加锁同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块。然而,当一个线程访问object的一个加锁代码块时,另一个线程仍然
- maven 简单实用教程
AdyZhang
maven
1. Maven介绍 1.1. 简介 java编写的用于构建系统的自动化工具。目前版本是2.0.9,注意maven2和maven1有很大区别,阅读第三方文档时需要区分版本。 1.2. Maven资源 见官方网站;The 5 minute test,官方简易入门文档;Getting Started Tutorial,官方入门文档;Build Coo
- Android 通过 intent传值获得null
aijuans
android
我在通过intent 获得传递兑现过的时候报错,空指针,我是getMap方法进行传值,代码如下 1 2 3 4 5 6 7 8 9
public
void
getMap(View view){
Intent i =
- apache 做代理 报如下错误:The proxy server received an invalid response from an upstream
baalwolf
response
网站配置是apache+tomcat,tomcat没有报错,apache报错是:
The proxy server received an invalid response from an upstream server. The proxy server could not handle the request GET /. Reason: Error reading fr
- Tomcat6 内存和线程配置
BigBird2012
tomcat6
1、修改启动时内存参数、并指定JVM时区 (在windows server 2008 下时间少了8个小时)
在Tomcat上运行j2ee项目代码时,经常会出现内存溢出的情况,解决办法是在系统参数中增加系统参数:
window下, 在catalina.bat最前面
set JAVA_OPTS=-XX:PermSize=64M -XX:MaxPermSize=128m -Xms5
- Karam与TDD
bijian1013
KaramTDD
一.TDD
测试驱动开发(Test-Driven Development,TDD)是一种敏捷(AGILE)开发方法论,它把开发流程倒转了过来,在进行代码实现之前,首先保证编写测试用例,从而用测试来驱动开发(而不是把测试作为一项验证工具来使用)。
TDD的原则很简单:
a.只有当某个
- [Zookeeper学习笔记之七]Zookeeper源代码分析之Zookeeper.States
bit1129
zookeeper
public enum States {
CONNECTING, //Zookeeper服务器不可用,客户端处于尝试链接状态
ASSOCIATING, //???
CONNECTED, //链接建立,可以与Zookeeper服务器正常通信
CONNECTEDREADONLY, //处于只读状态的链接状态,只读模式可以在
- 【Scala十四】Scala核心八:闭包
bit1129
scala
Free variable A free variable of an expression is a variable that’s used inside the expression but not defined inside the expression. For instance, in the function literal expression (x: Int) => (x
- android发送json并解析返回json
ronin47
android
package com.http.test;
import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import
- 一份IT实习生的总结
brotherlamp
PHPphp资料php教程php培训php视频
今天突然发现在不知不觉中自己已经实习了 3 个月了,现在可能不算是真正意义上的实习吧,因为现在自己才大三,在这边撸代码的同时还要考虑到学校的功课跟期末考试。让我震惊的是,我完全想不到在这 3 个月里我到底学到了什么,这是一件多么悲催的事情啊。同时我对我应该 get 到什么新技能也很迷茫。所以今晚还是总结下把,让自己在接下来的实习生活有更加明确的方向。最后感谢工作室给我们几个人这个机会让我们提前出来
- 据说是2012年10月人人网校招的一道笔试题-给出一个重物重量为X,另外提供的小砝码重量分别为1,3,9。。。3^N。 将重物放到天平左侧,问在两边如何添加砝码
bylijinnan
java
public class ScalesBalance {
/**
* 题目:
* 给出一个重物重量为X,另外提供的小砝码重量分别为1,3,9。。。3^N。 (假设N无限大,但一种重量的砝码只有一个)
* 将重物放到天平左侧,问在两边如何添加砝码使两边平衡
*
* 分析:
* 三进制
* 我们约定括号表示里面的数是三进制,例如 47=(1202
- dom4j最常用最简单的方法
chiangfai
dom4j
要使用dom4j读写XML文档,需要先下载dom4j包,dom4j官方网站在 http://www.dom4j.org/目前最新dom4j包下载地址:http://nchc.dl.sourceforge.net/sourceforge/dom4j/dom4j-1.6.1.zip
解开后有两个包,仅操作XML文档的话把dom4j-1.6.1.jar加入工程就可以了,如果需要使用XPath的话还需要
- 简单HBase笔记
chenchao051
hbase
一、Client-side write buffer 客户端缓存请求 描述:可以缓存客户端的请求,以此来减少RPC的次数,但是缓存只是被存在一个ArrayList中,所以多线程访问时不安全的。 可以使用getWriteBuffer()方法来取得客户端缓存中的数据。 默认关闭。 二、Scan的Caching 描述: next( )方法请求一行就要使用一次RPC,即使
- mysqldump导出时出现when doing LOCK TABLES
daizj
mysqlmysqdump导数据
执行 mysqldump -uxxx -pxxx -hxxx -Pxxxx database tablename > tablename.sql
导出表时,会报
mysqldump: Got error: 1044: Access denied for user 'xxx'@'xxx' to database 'xxx' when doing LOCK TABLES
解决
- CSS渲染原理
dcj3sjt126com
Web
从事Web前端开发的人都与CSS打交道很多,有的人也许不知道css是怎么去工作的,写出来的css浏览器是怎么样去解析的呢?当这个成为我们提高css水平的一个瓶颈时,是否应该多了解一下呢?
一、浏览器的发展与CSS
- 《阿甘正传》台词
dcj3sjt126com
Part Ⅰ:
《阿甘正传》Forrest Gump经典中英文对白
Forrest: Hello! My names Forrest. Forrest Gump. You wanna Chocolate? I could eat about a million and a half othese. My momma always said life was like a box ochocol
- Java处理JSON
dyy_gusi
json
Json在数据传输中很好用,原因是JSON 比 XML 更小、更快,更易解析。
在Java程序中,如何使用处理JSON,现在有很多工具可以处理,比较流行常用的是google的gson和alibaba的fastjson,具体使用如下:
1、读取json然后处理
class ReadJSON
{
public static void main(String[] args)
- win7下nginx和php的配置
geeksun
nginx
1. 安装包准备
nginx : 从nginx.org下载nginx-1.8.0.zip
php: 从php.net下载php-5.6.10-Win32-VC11-x64.zip, php是免安装文件。
RunHiddenConsole: 用于隐藏命令行窗口
2. 配置
# java用8080端口做应用服务器,nginx反向代理到这个端口即可
p
- 基于2.8版本redis配置文件中文解释
hongtoushizi
redis
转载自: http://wangwei007.blog.51cto.com/68019/1548167
在Redis中直接启动redis-server服务时, 采用的是默认的配置文件。采用redis-server xxx.conf 这样的方式可以按照指定的配置文件来运行Redis服务。下面是Redis2.8.9的配置文
- 第五章 常用Lua开发库3-模板渲染
jinnianshilongnian
nginxlua
动态web网页开发是Web开发中一个常见的场景,比如像京东商品详情页,其页面逻辑是非常复杂的,需要使用模板技术来实现。而Lua中也有许多模板引擎,如目前我在使用的lua-resty-template,可以渲染很复杂的页面,借助LuaJIT其性能也是可以接受的。
如果学习过JavaEE中的servlet和JSP的话,应该知道JSP模板最终会被翻译成Servlet来执行;而lua-r
- JZSearch大数据搜索引擎
颠覆者
JavaScript
系统简介:
大数据的特点有四个层面:第一,数据体量巨大。从TB级别,跃升到PB级别;第二,数据类型繁多。网络日志、视频、图片、地理位置信息等等。第三,价值密度低。以视频为例,连续不间断监控过程中,可能有用的数据仅仅有一两秒。第四,处理速度快。最后这一点也是和传统的数据挖掘技术有着本质的不同。业界将其归纳为4个“V”——Volume,Variety,Value,Velocity。大数据搜索引
- 10招让你成为杰出的Java程序员
pda158
java编程框架
如果你是一个热衷于技术的
Java 程序员, 那么下面的 10 个要点可以让你在众多 Java 开发人员中脱颖而出。
1. 拥有扎实的基础和深刻理解 OO 原则 对于 Java 程序员,深刻理解 Object Oriented Programming(面向对象编程)这一概念是必须的。没有 OOPS 的坚实基础,就领会不了像 Java 这些面向对象编程语言
- tomcat之oracle连接池配置
小网客
oracle
tomcat版本7.0
配置oracle连接池方式:
修改tomcat的server.xml配置文件:
<GlobalNamingResources>
<Resource name="utermdatasource" auth="Container"
type="javax.sql.DataSou
- Oracle 分页算法汇总
vipbooks
oraclesql算法.net
这是我找到的一些关于Oracle分页的算法,大家那里还有没有其他好的算法没?我们大家一起分享一下!
-- Oracle 分页算法一
select * from (
select page.*,rownum rn from (select * from help) page
-- 20 = (currentPag