java面试4

1.两个对象a和b,请问a==b和a.equals(b)有什么区别?

a==b; 比较对象地址

a.equals(b);如果a对象没有重写equals方法,效果和==相同,如果重写了就按照重写的规则比较。

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

1).switch可以作用在byte上,不能作用在long上,JDK1.7之后可以作用在String上。

2).switch支持的类型byte,short,int,char,JDK1.5之后支持枚举,JDK1.7之后支持String类型

3,char型变量中是否可以存储一个汉字?

能   因为java一个字符是2个字节,每个字符使用Unicode编码表示

4.float f = 3.4;是否正确,表达式15/2*2的值是多少

不正确  float f = 3.4f;

   14

5.编写代码实现两个变量值交换,int m =3,n = 5;

int  temp = m;       m=n;       n= temp;

m=m+n;      n=m-n;      m=m-n;

m=m^n;     n = m^n;     m  = m^n;

6.java的基本数据类型有哪些?  String是基本数据类型吗?

基本数据类型有:byte,short,int,long,float,double,char,boolean

String是引用数据类型,不是基本数据类型

7.数组有没有length()方法?String有没有length()方法?

File没有没length()方法?ArrayList有没有length()方法

数组没有length()方法,但是有length属性。

String和File有length()方法

ArrayList没有length()方法,有size()方法获取有效元素个数

8.String str = new String("hello");创建了哪些对象?

字符串常量池中有一个对象,堆中有一个字符串对象

posted @ 2019-09-11 22:07  一条程序狗  阅读(298)  评论(0编辑  收藏  举报