既然大家坚定了信念,立志要成为一个java高手,所以,今天的课程也很重要(也非常简单).我希
望大家能认认真真得来看完本文(即使不认真也是可以学会的)。
好了,上周本博主去面试java开发,其中有一段面试;
面试官:什么叫基本数据类型?
我:byte,char,int,long,duoble,boolean,float,还有一个我忘记了,一共是八个···
面试官:确定吗?(表情有点轻蔑)
我:不是很确定,不过,大概是这样吧
面试官:他们都占多少个字节啊?
我:你tmd的到底是不是要招人的???
一次面试就这样愉快的结束了,害老子白白坐了一个小时的地铁还打印了2块钱简历。
现在,我必须告诉大家,这样的基础知识,面试的时候遇到的概率很小,但是如果他问到了,你
答不上来,这个面试基本就挂了,所以,我们无论如何,死记硬背。
咱们从最小的开始记:
byte 1字节
boolean 1字节
short 2字节
char 2字节
float 4字节
int 4字节
long 8字节
double 8字节
这么一看,大家记得住不?1,2,4,8各有2个,以你们的智商水平,估计看个8秒就能记住了,
每个一秒钟。
这个知识点,其实会引出一个非常难的(其实以你们的智商一点也不难)的知识点:基本类型和引
用类型。
一:如果面试官这么问:你是怎么理解基本类型和引用类型的?
我估计很多人是答不上来的,
简单一点来说,咱们的代码在运行时,数据会存放在堆或者栈中,2者相比呢,栈的存取速度比较
快,我们可以记一下,栈比堆快。
而这个基本类型,因为占的空间小,会直接存进栈里边。而引用类型,就是除去所有的基本类型
的其他数据,比如咱们最常用的String。
举一个小例子吧:
int a=100;
int b=a;
String c="niubi";
String d=c;
我们把a,b,c,d当做是4个盒子的话,那么,a和b盒子里都装着一张纸,里边写着100。c和d里边也
都装了一张纸,但是这个纸上可能写着“0xab12983”这样一串我们看不懂的玩意,我们发现,c
和d上写的内容是一样的。因为他们都引用了同一个String对象。
这就是基本类型和引用类型的区别。存放的东西不一样,一个装着值,一个装着地址串。
到了本文的第二个知识点了:程序流程控制。非常简单,一共有
1.循环语句:while,do-while,for
2.分支语句:if-else,switch,
3.跳转语句 break,return
4.异常处理语句:try-catch-finally,throw
5、还有传说中的label和continue,不过这2个玩意已经不建议大家用了。
我相信以大家的智商,都不需要我多解释,而且,据我多年以来的经验,没有一个面试官会问这
个玩意的,我们直接用一个小例子来跑完他们吧。
package class6;
public class Test {
public static void main(String[] args) {
int a=5;
while(a>0){
System.out.println("while a="+a);
a--;
}
int b=5;
while(b>0){
System.out.println("do while b="+b);
b--;
}
for(int c=5;c>0;c--){
System.out.println("for c="+c);
}
int e=10;
if(e>0){
System.out.println("e>0");
}else{
System.out.println("cnmb");
}
int f=2;
switch(f){
case 1:
System.out.println("f==1");
break;
case 2:
System.out.println("f==2");
break;
}
try{
int i=100;
}catch (Exception e1) {
e1.printStackTrace();
}finally{
System.out.println("finally");
}
}
}
好了,java语言是如此简单,本课更是简单更简单,最后,布置大家一个小作业,用java实现汉诺塔