黑马程序员技术交流社区
标题: 学习总结 [打印本页]
作者: 守得云开见月明 时间: 2018-6-12 20:01
标题: 学习总结
本帖最后由 守得云开见月明 于 2018-6-12 20:03 编辑
这一篇帖子讲讲对于技术的总结,主要是对于我自身这些天学习下来比较容易混淆、犯错的一些地方做出的一个总结.
第一、关于四则运算这块,byte short char这三种类型混合运算时,会被先提升为int,然后再四则运算,因此当等号左边的类型小于等号右边时,需要强制类型转换.而复合赋值运算符有一个好处就是隐含了一个强制类型转换,不需要手动强转.
第二、编译器的常量优化,在给变量进行赋值的时候,如果右侧没有变量,只有常量,且不超过左侧范围,编译后得到的.class已经知道结果,那么被正确赋值
第三、方法调用时返回值为void的时候 只能使用单独调用
第四、关于内存中栈、堆、方法区的区分:
栈(Stack):存放的都是方法中的局部变量,方法运行一定要在栈当中
堆(Heap):new出来的都在堆中,堆内存里面的东西都有一个地址值:16进制,堆内存里面的数据都有默认值
方法区:存放的都是.class文件.
第五、String[] 都是由byte转换过来的
Byte[] b={66,67,68};
String s=new String(b);
输出结果为BCD
第六、泛型只能是引用类型
第七、ArrayList这块知识点都清楚了但代码熟悉度不够,需要多敲代码提升熟练度.
对于ArrayList集合来说,直接打印得到的不是地址,而是内容
如果内容是空,得到的是空的中括号,因为默认输出toString
如果希望向集合ArrayList中存基本类型数据,必须使用包装类
这是课上的笔记,另外再补充一点:
如果ArrayList里面放的是对象,那么直接打印的内容是对象的地址值
特殊包装类:
int Intger
char Character
自动装箱:基本类型--->包装类型
自动拆箱:包装类型--->基本类型
注意事项:
ArrayList 的尖括号中的只能用 【引用类型】 不能用基本数据类型,
ArrayList 尖括号中的类型一旦确定,下面添加数据必须和尖括号中的类型一致
编译错误:就是在IDea 中出现红色下划线的 不能运行
运行错误 在IDea中没有错误,可以运行,但是在控制台会打印错误
最后附上这些天课堂练习的错题,开班到现在基本都是全对,还是比较满意的,下面的比较惭愧,当时发现做错的第一时间反应的答案错了,结果都是由于自己不仔细导致,不仔细的原因还是代码熟练度不够,敲的不够多.
观察下列代码,选出正确答案:( )
ArrayList<int> al = new ArrayList<int>();
al.add(11);
al.add(22);
System.out.println(al.get(al.size()-1));
A:编译失败
B:[11]
C:22
D:运行报错
观察下列代码,选出调用getList方法正确答案:( )
getList(); //调用方法
public static ArrayList getList(){
ArrayList<String> list = new ArrayList<String>();
list.add("aa");
list.add("bb");
}
A:编译报错
B:"bb" "aa"
C:"aa" "bb"
D:运行报错
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |