A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 守得云开见月明 初级黑马   /  2018-6-12 20:01  /  813 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 守得云开见月明 于 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:运行报错

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马