自己看 JAVA SE_一、javase基础知识总结( 二 )


int a = -129;
int b = -129;// -128= .();
for(Entry entry: ){
id = () entry.();
//此时的()返回就是一个对象,因为上面已经定义了泛型了
.out.("学生姓名:"+entry.().());
22、Map的增删查改
增: 调用map的put(key,value)方法添加
查:1、利用()方法获得Map中的key集合,再遍历key的集合,
利用Map的get(key)方法得到key对应的value值 。
2、利用()方法获取Map中的Entry对象集,然后用遍历集,
再用Entry集的()和()方 法得到每个key值和value值 。
注意:通过()可以返回Map中的所有键值对 。
Set>= .();
删:( key);
改:put(原有的key,新的value);
23、List中的方法
List中的()方法的原理
List中()被调用时,会主动遍历List中的每个元素,并使用类中的()方法和传进来的引用
依次做比较,如果发现传进来的对象和某个元素指向一块相同的内存地址就返回true;
如果要实现比较传进来的对象和某个元素里面的内容是否相同,需要重写方法(这个重写是一个模版)
void( obj)
if(this == obj) // 指向同一个内存快 必然是相同的
true; //为什么() 返回的是false
// 原因就在在这里 只是比较了一下 引用的值是否相同 没有进一步的比较 内存块中的值 下就是对这里进行了改写
if (obj == null) // 如果obj为空 就直接没有戏了
false;
if(! (obj)) //如果两者的不属于同一类型则 也直接没戏了
false;
//经过以上的这么多的比较 终于可以判断二者的值是不是相同了
//首相要把objet型的obj转成
= () obj;
if( this.name == null )//比较内容是否想等

if(.name == null )
true;
elsefalse;
else
if(this.name.(.name))true;
elsefalse;
//如果还有别的属性接着写
补充:List中的();方法与上面介绍的()使用相似
24、Set中的()方法
在中定义了()方法还有个()方法,()方法是返回一个哈希码 。
调用Set中的(obj)方法的时候,先是调用()返回哈希码,
如果哈希码想等的情况下再调用()方法,判断两个元素是否想等,
只有这两个方法返回的值都为true,才表明这个包含这个元素 。
判断set中的课程是否存在(是否包含这个元素)?
使用set中的方法,set中调用(obj)方法,方法的实现机制:
先调用中的方法,再调用中的方法 。
所以要对对象的()方法和方法重写,
可以使用中的> (),在对象的类中,实现方法的重写 。
25、Set中也有(),();方法等
26、获取List中中某个元素的索引位置使用 。()方法与()方法实现
()方法与()方法实现原理:
1、遍历调用每个元素的()方法,如果返回true则将次元素的索引返回;
2、如果有多个相同元素,则只返回第一个元素的索引;
3、()方法则从最后一个元素开始遍历;
26、Map中判断是否包含这个元素调用( key),返回id,调用(value),返回的是value
/**
* 测试Map中是否包含某个Key或者某个Value值
*/
void ue(){
//提示输入学生ID
.out.("请输入查询学生ID:");
= new (.in);
id = .next();
//在Map中 用()方法来判断是否包含Key值
.out.("您输入的学生ID为"+id+",在学生映射表中是否存在"+.(id));
if(.(id)){
.out.("对应的学生为"+.get(id).());
//提示输入姓名
.out.("请输入学生姓名");
name = .next();
//用()方法来判断是否包含Value值 。
if(.(name)){
.out.("对应的学生为"+.get(id).());
}else{
.out.("没有此学生");
30、集合的排序
数组的排序使用java.util.里面的静态方法sort() 再提一遍:泛型不能用基本类型 。