1.Scanner内置方法next(); nextInt(); nextLine(); hasNext();区别
使用nextLine()方法时,不将空格看做是两个字符串的间隔,而是看作字符串的一部分,返回时,它作为String类型一并返回
使用next()方法时,将空格看作是两个字符串的间隔
使用nextInt()方法时,也将空格看成两个字符串的间隔,只不过他的返回值是int类型的
使用hasNext()方法时,这个是扫描器在缓冲区依次扫描单词(以空格为间隔分割输入),依次返回true,直到扫描为空,这时并不返回false,而是等待你输入内容继续扫描,所以可以加上参数 例如while(!a.hasNext("$")),在扫描到¥时停止;
hasNext()返回的是boolean类型而next()返回的是你输入的那个值,
hasNext()是判断有没有下个元素,next()是取下个元素
a为对象
a.hasNext()可以理解为把输入的值存到了a当中而a.next()可以理解为从a中取值,取了就没有了
先调用hasNext()存值,然后用next()可以取值,取一个少一个
2.if 语句的比较除了boolean类型外其他类型都不能用赋值语句,否则会提示无法转成布尔类型
3.hashMap不保证有序
4.List中的set()方法, set方法直观上根据方法名可以理解为设置list中某个位置的元素。但需要注意的是,该方法本质上是一种替换操作,即,要设置某个位置上的元素,这个位置在设置前必须有元素,否则会抛出异常
5.接口中,属性都是默认public static final修饰的,final修饰的属性必须赋值
6.父类引用要调用子类方法,必须向下转型,主要看引用是啥类型的才能直接调用调用该类型的方法
7.hashMap实现Map接口,它允许任何类型的键和值对象,并允许将NULL用做键或者值
8.取模运算,余数的符号跟被除数有关
9.int v=NumberList.size();NumberList.remove(v); 调用的remove(int index) 而不是remove(Object 0)
10.什么时候需要使用抽象类?
当一个类的一个或多个方法为抽象方法时
当类是一个抽象类的子类,并不能为任何抽象方法提供任何实现细节或方法体时
当一个类实现一个接口,并不能为任何抽象方法提供实现细节或方法体时。
11.常量池属于方法区,不属于JVM堆内存
12.HashMap中的Key-value都是存储在Entry中的
13 Collection是java.util下的接口,它是各种集合的父接口
Collections是java.util下的类,它包含有各种有关集合操作的静态方法,此类不能实例化,就像一个工具类,服务于java的 Collection框架