Java面试题集PDF
一、Java基本数据类型包括:byte、short、int、long、float、double、char、boolean。String不是基本数据类型,它是一个对象类型,属于类库中的类。基本数据类型是直接存储数据值,而String是对字符序列的封装,通过对象引用进行操作。
字符串的操作可以通过方法进行。反转字符串可以使用StringBuilder的reverse()方法,替换字符串可以使用replace()方法。例如,输入'abc'时,可以通过StringBuilder实现反转,输出为'cba';替换操作,如将'bbbwlirbbb'替换为'bbbhhtccc',可以通过String的replace()方法实现。
数据类型之间的转换有多种方式。将字符串转为数字可使用Integer.parseInt()或Double.parseDouble(),将数字转为字符可通过强制转换或使用Character.forDigit()。对浮点数进行小数点前两位的取舍可以通过BigDecimal进行四舍五入。
日期和时间的操作可以通过java.util.Date类或java.time包来实现。获取当前的年月日或小时分秒可以通过Calendar类。1970年到当前的毫秒数可以通过System.currentTimeMillis()获取,日期格式化可以通过SimpleDateFormat类完成。
数组和集合是Java中常用的数据结构。数组是固定大小的连续内存空间,集合则是动态大小的容器,常见的集合类包括List、Set、Map等。
文件和目录操作使用Java的I/O流来实现。通过File类可以列出某个目录下的所有文件和子目录,并判断文件或目录是否存在。文件的读写可以通过FileInputStream和FileOutputStream等类实现。
Java的多态通过继承、方法重载和方法覆盖来实现。继承允许子类继承父类的方法,方法重载是同一类中方法名相同但参数不同,方法覆盖则是子类重新定义父类方法。
编码转换可通过String类中的getBytes()方法和String的构造函数来实现。例如,将GB2312编码的字符串转换为ISO-8859-1编码,可以通过指定字符集实现。
Java访问数据库的步骤通常涉及加载数据库驱动、建立连接、创建Statement或PreparedStatement、执行查询或更新操作等。PreparedStatement与Statement的区别在于PreparedStatement支持预编译,可以提高性能并防止SQL注入。
代码中可能存在的错误通常包括:数组越界、空指针异常、SQL注入等。代码错误的排查可以通过异常捕获和日志打印等方式进行调试。