Java基础面试题解析(上)

1. 在Dos命令下,编译java文件,执行Java文件?【掌握】

​考核点:Java编译过程。

答:

第一步:编写源程序,源程序扩展名为".java";

第二步:在Dos命令行下,进入".java"文件所在的目录,使用javac命令进行编译源程序;

第三步:编译后,使用Java命令运行编译后的".class"字节码文件。

2. String是最基本的数据类型吗?基本数据类型有哪些?【掌握】

考核点:基本数据类型。

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

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

3. int和Integer有什么区别?【重点】

考核点:包装类、基本数据类型。

答:

int是八种基本数据类型中的一个;

Integer是该基本数据类型所对应的包装类;

Integer可以存null值,int不可以;

Integer相比int而言其占用的内存更大一些;

在拆箱和装箱中,二者自动转换。

4. float f=3.4编译能否通过?short s1=1;s1= s1+1;有什么错?【重点】

考核点:自动类型转换。

答:

不正确,不能;

因为Java默认浮点型数据是double类型,所以不能编译,正确写法为float f=3.4f;

因为sl+1的结果为int类型,而int类型不能直接赋值给short类型。

5. String s=null和String s=""的区别?【重点】

考核点:null与空串的区别。

答:

String s=null:s没有初始化,不能使用,否则会引发空指针异常。

String s="": s的初始值为"",可以正常使用。

6. Swtich是否能作用在byte、long、String类型上? 【重点】

考核点:Switch语句,与JDK7特性。

答:

Swtich可以作用在byte、short、int、char四个类型;

Enum类型在JDK1.5以上的版本可以使用;

String类型在JDK1.7以上的版本中可以使用。

7. 如何把一段使用逗号分割的字符串转换成一个数组?【了解】

考核点:String类常用方法(看看其他的常用方法,至少能说出5个以上)。

答:

第一种,使用String类的split方法:

|---------------------------------------------------------------------------|
| String str = "jack,rose,tom,mike,john"; String[] strs = str.split(","); |

第二种(可以不答),使用StringTokenizer类,代码为:

|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| StringTokenizer tokener = new StringTokenizer("jack,rose,tom,mike,john ", ","); String[] result = new String[tokener.countTokens()]; int i = 0; while (tokener.hasMoreTokens()) { result[i++] = tokener.nextToken(); } |

8. 数组和String类有没有length()这个方法?【了解】

考核点:属性与方法的区别。

答:

数组没有length方法,但是有length属性;

String类有length()方法。

相关推荐
数据小爬虫@36 分钟前
Java爬虫实战:深度解析Lazada商品详情
java·开发语言
咕德猫宁丶38 分钟前
探秘Xss:原理、类型与防范全解析
java·网络·xss
songroom38 分钟前
Rust: offset祼指针操作
开发语言·算法·rust
code04号42 分钟前
C++练习:图论的两种遍历方式
开发语言·c++·图论
煤泥做不到的!2 小时前
挑战一个月基本掌握C++(第十一天)进阶文件,异常处理,动态内存
开发语言·c++
F-2H2 小时前
C语言:指针4(常量指针和指针常量及动态内存分配)
java·linux·c语言·开发语言·前端·c++
苹果酱05672 小时前
「Mysql优化大师一」mysql服务性能剖析工具
java·vue.js·spring boot·mysql·课程设计
_oP_i3 小时前
Pinpoint 是一个开源的分布式追踪系统
java·分布式·开源
mmsx3 小时前
android sqlite 数据库简单封装示例(java)
android·java·数据库
bryant_meng3 小时前
【python】OpenCV—Image Moments
开发语言·python·opencv·moments·图片矩