Java基础整合

前言

为什么要夯实基础

那当然是拿高工资撒💴😎😎😎


基础题👑

1.八大基本数据类型有哪些是?

多数面试官都会问一个很常见的问题,那就是你有什么优点啊?

你怎么回答,回答说我吃苦耐劳,能适应弹性工作,很合群,开朗热情

NO,NO,NO那你就大错特错,你所说的一般人都能做到很普通,并且面试官他没办法看到

那该怎么说呢?

通过我们的答题的方式体现出我们的条理分明,逻辑清晰啊😎,

对于一般人来说就很简单都知道对吧是什么

int,long,char,byte,boolean,short,float,double

对吧,但是既然一般人都知道,那我们就可以体现出不同的

例如:

          整型:bype、short、int、long
          浮点型:float、double
          其他:char、boolean

这样回答就会侧写出你的逻辑清晰,条理分明但是就一定要这样回答吗?

不,你还可以优化

例如:

      整数型:int  short 短整型  long长整型: byte
      浮点型:double(双精度浮点型),float(单精度浮点型)
      字符型:char 布尔型:boolean

2.get和post的区别

总结如图👇

 3.&和&&的区别        

示例代码

package Demo;

public class Demo {
    public static void main(String[] args) {
        if (a1() && a2()){
            System.out.println("打印中……");
        }
    }


    private static boolean a1() {
        System.out.println("a1");
        return false;
    }
    private static boolean a2() {
        System.out.println("a2");
        return false;
    }
}

示例片段

总结:

&:不管前面的条件是否正确,后面都执行。

&&:前面条件正确时,才执行后面,不正确时,就不执行,就效率而言,这个更好。

&&是逻辑运算中的“短路”,若"&&"前的条件为false时判断结果为false,不再执行"&&"后的语句块。"&&"前为true则继续进行进行后半部分的判断 。

4. 八种基本数据类型的大小,以及他们的封装

注解:

1.int 是基本数据类型,Integer 是 int 的封装类,是引用类型。int 默认值是 0,而 Integer 默认值是 null,所以 Integer 能区分出 0 和 null 的情况。一旦 java 看到 null,就知道这个引用还没有指向某个对象, 再任何引用使用前,必须为其指定一个对象,否则会报错。

5.switch 是否能作用在 byte 上,是否能作用在 long 上,是否能作用在 String

代码示例:

 byte key = 0;
        int i=key;
        System.out.println(i);
        switch(key){
            case 1:
                break;
            default:
                break;
        }

Switch可以作用在byte上,Switch标准是写int

因为byte是两字节,而int是4个字节,所以byte自动向上提升,也就是隐式转换

但是long 和 String 类型 都不符合 sitch 的语法规定,并且不能被隐式转换成 int 类型

不过在 JDK1.7 之后,switch 也支持了 String(注意)

6.short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什错

示例:

对于

short s1 = 1;

s1 = s1 + 1;

由于 s1+1 运算时会自动提升表达式的类型,所以结果是 int 型,再赋值给 short 类型 s1 时,编译器将 报告需要强制转换类型的错误。

对于

short s1 = 1;

s1 += 1;

由于 += 是 java 语言规定的运算符,java 编译器会对它进行特殊处理,因此可以正确编译

 7. char 型变量中能不能存贮一个中文汉字?为什么?

首先肯定是能,但是只能存贮一个

char a='我';

char 型变量是用来存储 Unicode 编码的字符的,unicode 编码字符集中包含了汉字,所以,char 型变量中所以可以滴

8.使用 final 关键字修饰一个变量时,是引用不能变,还是引用的对象不能变

使用 final 关键字修饰一个变量时,是指引用变量不能变,引用变量所指向的对象中的内容还是可以改变的。

例如

 final StringBuffer a=new StringBuffer("immutable");

执行如下语句将报告编译期错误:

a=new StringBuffer(""); 

但是,执行如下语句则可以通过编译:

a.append(" broken!");

所以是引用不能变!

8. "=="和 equals 方法究竟有什么区别

简单总结:👀

"=="比较地址,equals比较的是值

区别

==操作符专门用来比较两个变量的值是否相等,也就是用于比较变量所对应的内存中所存储的数值是否相同,要比较两个基本类 型的数据或两个引用变量是否相等,只能用==操作符       

equals 方法是用于比较两个独立对象的内容是否相同,就好比去比较两个人的长相是否相同,它比较的两个对象是独立的  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值