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,这次比较有意思,那就是反射了 一.认识 ...
随机推荐
- tensorflow例子-【老鱼学tensorflow】
本节主要用一个例子来讲述一下基本的tensorflow用法. 在这个例子中,我们首先伪造一些线性数据点,其实这些数据中本身就隐藏了一些规律,但我们假装不知道是什么规律,然后想通过神经网络来揭示这个规律 ...
- Hbase写Hfile报错:Trying to load more than 32 hfiles to one family of one region
在写Hfile的时候 ,如果一个family下超过了默认的32个hfile,就会报如下错误: ERROR mapreduce.LoadIncrementalHFiles: Trying to load ...
- Linux基础性笔记
声明:这是我整理的韩顺平老师的课程,仅供自己参考!!! 给自己的一碗汤:学东西要专一(比较难) 第一节 Linux特点总结: 1. 免费的.开源的. 2. 支持多线程(并发).多用户. 3. 安全性比 ...
- Redis学习笔记二 (BitMap算法分析与BitCount语法)
Redis学习笔记二 一.BitMap是什么 就是通过一个bit位来表示某个元素对应的值或者状态,其中的key就是对应元素本身.我们知道8个bit可以组成一个Byte,所以bitmap本身会极大的节省 ...
- java在cmd下编译引用第三方jar包
java在cmd下编译引用第三方jar包 转 https://blog.csdn.net/qq_21439971/article/details/53924594 获取第三方jar包 第三包我们可以引 ...
- XVII Open Cup named after E.V. Pankratiev. Eastern GP, Division 1
A. Count The Ones $ans=b-c+1$. #include <stdio.h> using namespace std ; int a , b , c ; void s ...
- linux进阶指令
1.df 查看磁盘空间 2.free 查看内存使用 -m 表示以mb位单位查看 total 总大小 used 使用过的空间 free 空闲的空间 shared 共享内存 buffer ...
- swift中Cell的内容定制
1.cellForTitle 2.register
- Java Base64 加解密
public class base64EncryAndDecry { public static final String CODES = "ABCDEFGHIJKLMNOPQRSTUVWX ...
- __x__(46)0910第六天__框架集
框架集frameset 和 内联框架iframe 的作用类似: 在一个页面中,引入其他的外部html页面. 框架集可以同时引入多个页面. 在 html5 中,推荐使用框架集,而不推荐使用iframe ...