Request的方法和数组
req.getHeader("referer") [取得发送请求页面对应的浏览器地址栏信息,可以使用这种方法实现防盗链等操作] String name=new String(request.getparameter("username").getbytes("GBK"),"utf-8"); system.out.println("解决中乱码":+name);
数组
1.数组的概念:数组属于引用类型,数组的本质就是一个容器,存放一组相同数据类型变量的数据容器
2.数组的格式:数据类型[ ] 数组名; java
数据类型 数组名[ ]; C语言
特点:1.数组的本质就是一个引用类型的变量,既然是变量就必须满足先声明在赋值再使用
2.数组的初始化:a.声明 b.赋值 c.使用
3.数组的内存分配
数据类型[ ]数组名=new 数据类型 [长度];
4.访问数组的元素
arr[下标/索引]
java.lang.nullpointerexception
异常名称:空指针异常
产生原因:对象没有new就访问了对象的成员
解决办法:new
java.lang.arrayindexoutofboundsexception
异常名称:数组越界
产生原因:访问了不在数组定义范围内的索引
解决办法:检查索引是否超出了数组定义的范围
3.数组的初始化:
静态初始化:数据类型[ ]数组名=new 数据类型[ ]{元素1,元素2,元素3.....}; 用作匿名对象
数据类型[ ]数组名={元素1,元素2,元素3.....}; 用作初始化
动态初始化:数据类型[ ]数组名=new 数据类型[长度];
二者区别:静态初始化在初始化的同时会给每一个元素赋值,不需要指定数组的长度,
不需要指定数组的长度,系统会自动根据元素的个数去动态计算数组的长度。
动态初始化在初始化的同时由系统分配默认值,但是必须指定数组的长度
4.值传递和引用传递
1.值传递的本质传递的是数值本身,引用传递的本质传递的是地址
2.如果传递的是地址,那么通过地址改变了堆区空间的数值,将会影响到所有指向该堆区的引用
5.数组的查找
基本查找:针对所有的数组都可以
二分法查找:针对有序的数组效率可以提高非常多
6.数组的排序
八大排序算法:冒泡 选择 插入 快速 希尔 堆 归并 基数
冒泡 规律:1.相邻两个数进行比较,大的数冒泡,交换两个数的位置
2.一共比较了arr.length-1趟
3.每一趟比上一躺少比较一次
选择 规律:1.每一趟初始比较的位置是上一躺位置+1
2.前面的元素依次和后面每一个元素进行比较,小的往前放
foreach遍历数组
集合和数组专属遍历方式,底层还是使用普通for遍历
格式:
for(数据类型 变量名:数组名/集合名){
}
普通for和foreach的区别:
1.简化了遍历 2.没有索引
7.为什么需要可变参数?
针对参数类型相同但是参数的个数不同的情况下非常方便
可变参数:是一种形参类型
格式:数据类型...参数名
注意事项:1.可变参数的本质是数组
2.可变参数的...可以放在参数类型和变量名中间的任意位置
3.可变参数必须出现在参数列表的最后面
Request的方法和数组的更多相关文章
- [原创]java WEB学习笔记59:Struts2学习之路---OGNL,值栈,读取对象栈中的对象的属性,读取 Context Map 里的对象的属性,调用字段和方法,数组,list,map
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- <<< request.getParameterMap()方法
request.getParameterMap()方法返回的值,是一个Map类型的,记录着所提交的请求中请求参数和请求参数值的映射关系. 当不知道前台传过来的是什么,且不知道传过来的对象时,可用这个, ...
- 让ar执行queryall和queryrow方法返回数组
让ar执行queryall和queryrow方法返回数组 <?phpnamespace common\components;use \CActiveRecord;use \Yii;use \CD ...
- javascript小实例,多种方法实现数组去重问题
废话不多说,直接拿干货! 先说说这个实例的要求:写一个方法实现数组的去重.(要求:执行方法,传递一个数组,返回去重后的新数组,原数组不变,实现过程中只能用一层循环,双层嵌套循环也可写,只做参考): 先 ...
- C#面向对象的方法写数组的功能
上一篇文章用Java方法写出了可以对数组执行的功能,然后在用实例化后的对象调用这些方法来实现这些功能: 这篇随笔改用C#语言实现同样的功能 方法类:Array using System; using ...
- Java基础知识强化85:System类之arraycopy()方法(数组拷贝)
1. arraycopy方法(数组拷贝) public static void arraycopy(object src,int srcPos,Object dest,int destPos, int ...
- C#:.net/方法/字符串/数组
C#:.net/方法/字符串/数组,那点事 首先还是先说下(几个概念的东西)c#下的.net平台的构造快及其功能作用和程序集: .net: .net平台是由:a:运行库+b:全面基础类库(这个是从程序 ...
- javascript多种方法实现数组去重
先说说这个实例的要求:写一个方法实现数组的去重.(要求:执行方法,传递一个数组,返回去重后的新数组,原数组不变,实现过程中只能用一层循环,双层嵌套循环也可写,只做参考): 先给初学者解释一下什么叫数组 ...
- JAVA进阶之旅(二)——认识Class类,反射的概念,Constructor,Field,Method,反射Main方法,数组的反射和实践
JAVA进阶之旅(二)--认识Class类,反射的概念,Constructor,Field,Method,反射Main方法,数组的反射和实践 我们继续聊JAVA,这次比较有意思,那就是反射了 一.认识 ...
随机推荐
- .net core web api 与httpclient发送和接收文件及数据
客户端 HttpClient var url = $"https://localhost:44323/api/values/posttest?resource_source=yangwwme ...
- python开发环境_windows系统安装_错误记录
1 安装python编译器2.7.11版本 (安装包自带pip,setuptools,依赖,会将pip,setuptools安装到自己的类库中) 配置环境变量: 配置python_home,然后加入p ...
- Elasticsearch 简单快照备份
创建仓库 POST http://10.10.14.201:9200/_snapshot/backup { "type": "fs", "settin ...
- Constructing continuous functions
This post summarises different ways of constructing continuous functions, which are introduced in Se ...
- Ubuntu中eclipse端口被占
我的eclipse有时候会闪退,然后再次打开运行HTML程序的时候会提示端口被占,即使之前改过端口也会提示,然后我就在网上搜索解决办法,目前亲测有效的是 输入以下命令: lsof -i:8888 // ...
- Linux安装RocketMQ
本文介绍Linux安装RocketMQ. 1.RocketMQ简介 RocketMQ是阿里巴巴中间件开发的分布式消息系统,曾经经历过很多阿里巴巴大型项目的实际检验.在去年已经正式捐献给Apache开源 ...
- Understanding HBase and BigTable
Hbase is a distributed data storage systems. A Bigtable is spare , distributed , persistent multidim ...
- HTML入门3
HTML主要工作在于编辑文本结构和文本内容,也称语义(semantics)以便能够再浏览器正确地显示,下面开始介绍在文本中添加标题,段落,强调语句,创建列表等等 基础:标题和段落 内容结构化会使得阅读 ...
- mysql百万级全文索引及match快速查找
建立全文索引的表的存储引擎类型必须为MyISAM 问题是match against对中文模糊搜索支持不是太好 新建一个utf8 MyISAM类型的表并建立一个全文索引 : CREATE TABL ...
- Hibernate-day02
OID 1,对象里面没有主键的概念,对象中对应主键的属性,称为OID(对象标识符);2,OID用来唯一标明一个对象实体(加上对象类型)3,OID在对象里面不见得只有一个属性;(映射复合主键)4,OID ...