Java基础查漏补缺

String str2 = "hello";
String str3 = "hello";
System.out.println(str3==str2);//true

Java运行时会维护一个String Pool(String池)。String池用来存放运行时中产生的各种字符串,并且池中的字符串的内容不重复。而一般对象不存在这个缓冲池,并且创建的对象仅仅存在于方法的堆栈区。

break需要在switch和loop内; (虽然没有这么做过……)
上下双死循环:编译错误,无法访问的语句;

手算二进制、十进制互转(普通版以及简化版):

十转二:2的(i-1)次幂的和,i为第几位。
二转十1:该数短除2至商为0,余数自下至上为二进制结果。
二转十2:列出2的0到i次幂,将该数分解为2的幂相加,有2的i次幂的位为1,不然为0;
十进制52=32+16+4
‭ 00110100‬

空间最小单位为字节byte,占8个二进制位;

dos命令:

  • help(帮助,命令菜单)
  • dir(列出当前目录下的子文件和子文件夹)
  • cd(切换目录)
    cd 目录名
    cd ..返回上层目录
    cd \返回根目录(正反斜杠都可以)
  • cls 清屏;
  • c: 切换盘符
    上下键历史命令,tab补全;

JVM:Java Virtual Machine
JRE:Java Runtime Environment
JDK:Java Development Kit

JRE=JVM+核心类库
JDK=JRE+开发工具
环境变量:
名:JAVA_HOME
值:Java安装目录
名:Path
值:%JAVA_HOME%\bin
(为什么百度到的环境变量配置那么麻烦?)

引用数据类型可以直接传参来修改,基本数据类型必须返回?(传值传引用?)

byte和short在进行计算式会自动转化为int,二常量会在编译时直接进行计算
+按顺序计算,进行计算或者字符串连接

&&和&,&&具有短路效果,获得结果后不再计算后面,||和|同理,因此优先使用&&和||;
工程名一般小写,包名为域名倒写;

接口,是Java语言中一种引用类型,是方法的集合,如果说类的内部封装了成员变量、构造方法和成员方法,那么
接口的内部主要就是封装了方法,包含抽象方法(JDK 7及以前),默认方法和静态方法(JDK 8),私有方法
(JDK 9)。
(终于彻底明白接口了,类似C#的委托,Java使用接口实现,均可以大幅提高代码的利用率!)
默认方法类似成员方法,提供方法的默认实现;

Scanner类读取输入;
字符串:subString()截取字符串,index()是否包含某字符串,也可以用来判定是否以某字符串开头,trim()删除前后空格(删除前或后或前后空白字符),replace(str)替换字符串,注意是返回新字符串而不是修改

在for循环中使用i--来回溯;
ArrarList成员方法:toArray(T[] a)可以安全的转化为数组

打印数组可以用Arrays.toString(arr)快速打印而不用遍历

标签: Java

添加新评论