logo头像
Snippet 博客主题

Java 中的小知识点

如何输入数组

未知数组大小

1
2
3
4
5
6
7
8
9
System.out.println("请输入几个数并用逗号隔开:");
Scanner sc = new Scanner(System.in);
String str = sc.next().toString();
String[] arr = str.split(",");
int[] b = new int[arr.length];
for(int j = 0; j<b.length;j++) {
b[j] = Integer.parseInt(arr[j]);
System.out.println(b[j]+" ");
}

已知数组大小

1
2
3
4
5
6
7
8
System.out.println("请输入三个数:");
Scanner in = new Scanner(System.in);
int[] b2=new int[3];
for(int j=0;j<b2.length;j++){
b2[j]=in.nextInt();
}
System.out.println(Arrays.toString(b2));
}

Java中的8种基本类型是什么?

面向对象的三个基本特征 和 五种设计原则

三个基本特征:封装、继承、多态。
五大原则:单一职责原则、开放封闭原则、里氏替换原则、依赖倒置原则、良性依赖原则

int 和 Integer 区别

是否相等

Integer直接赋值(不是new)是在常量池中的同一空间,但是有范围(-128-127),如果超出了范围,会从堆区new一个Integer对象来存放值。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Integer a=17;
Integer b=17;
Integer c=1000;
Integer d=1000;
System.out.println(a==b); // true
System.out.println(c==d); // false

int a=17;
int b=17;
int c=1000;
int d=1000;
System.out.println(a==b); // true
System.out.println(c==d); // true

Integer a = new Integer(3);
Integer b = 3; // 将3自动装箱成Integer类型
int c = 3;
System.out.println(a == b); // false 两个引用没有引用同一对象
System.out.println(a == c); // true a自动拆箱成int类型再和c比较

权限修饰符

类内部 本包 子类 外部包
public
protected ×
default × ×
private × × ×

抛出异常

在方法后面加上 throws Exception
使用的时候 throw new Exception(“xxx”);

1
2
3
4
5
6
7
public int pop() throws Exception{
if(stack.empty()){
throw new Exception("queue is empty");
}
return stack.pop();

}