培训班的日子第17天
路漫漫长修远兮 吾将上下而求索
今天我背会了以下单词:
exception 例外
equals 等于
lower 较低的
trim 修剪
buffer 缓冲区
ignore 忽略
upper 上
last 最后
concatenate 连接
final 最后
private 私有的
回忆昨天不会和有理解错误的东西
内部类
-
静态内部类:
- 静态内部类不需要外部类对象
- 静态内部类不持有外部类对象的引用
- 静态内部类不能访问非静态成员(包含属性和方法)
代码:
public class Other1 {
private static int i=0;
public Inner in=new Inner();
private static class Inner{
private void print() {
// TODO Auto-generated method stub
System.out.println(i);
}
}
}
*
比较器
开闭原则: 对修改关闭 对扩展打开
单一职责:一个类,有紧密的属性和方法组成。必须结合业务 结合需求
方法:一个方法实现一个功能
comparebale(可比较的)
-
如果我的类实现了* able 说明我具备了 *能力
如果类实现了comparble 说明我的类可以比较 具备了比较的能力
有单一原则
compator 比较器
- 这是一个接口,如果一个类实现了comparble 说明其具备了比较的能力,而如果一个类实现了compator 则 说明其具备了比较器的能力:
代码如下:
public class AgeCompar implements Comparator<Student>{
public int compare(Student o1, Student o2) {
return o1.getAge()-o2.getAge();
}
-
关于比较器 有一些别的类当中也带有
如:
Arrays.sort(Object[] tt,Compartor c);
包装类
- 将基本数据类型自动包装成类
:
Integer i=10;
自动拆箱和自动封箱
Integer i=10;,将基本数据类型自动转换成引用数据类型
int t=i;.将引用数据类型自动拆箱称基本数据类型
-
常量池:
如下代码:
Integer i1=127;//new In
Integer i2=127;//new In
System.out.println(i1==i2);
Integer i3=-129;//new In
Integer i4=-129;//new In
System.out.println(i3==i4);
运行结果:
true
flase
这时候我们就会看到,明明我们的数字都是一样的,为什么就不一样呢。
因为我们的常量都存在于常量池当中,而常量池当中的大小为 -128-127之间,如果超出了这个界限,我们的内存会自动为我们创建新的地址。而 == 则比较的是地址,所以就会出现以上问题。
以下小的方法
toBinaryString 二进制转换
toOctalString 八进制转换
toHexString 十六进制转化
.toString(10, 4) 以什么进制去显示 4进制显示
parseInt("FFG",16); 转换成需要的进制 16进制
// 将10进制转换成2进制 Binary二进制
String binaryString = Integer.toBinaryString(10);
System.out.println(binaryString);
//将10转换成8进行
String octalString = Integer.toOctalString(10);//016 1010 0x 16
System.out.println(octalString);
// 将10进制转换成16进制
String hexString = Integer.toHexString(10);
System.out.println(hexString);
String string = Integer.toString(10, 4);
System.out.println(string);
// 二进制转换成10进制
//"1010" 第二个参数以多少进制解析这个字符串
// 16进制最大是F
//32
int parseInt = Integer.parseInt("FFG",16);
System.out.println(parseInt);
-
—————2017年6月8日23:11:46 syf