1️⃣ 常用类库篇
一、填空题
- 在
java.lang
包中提供了两个字符串类,分别是________ 和________ 。这两个类都是________ 接口的子类,字符串类提供的求字符串长度的方法是________________ 。 - Java 提供的两个大数操作类是________ 和________ 。
- 对象克隆方法是________ 类提供的,方法名称是________________ ,对象所在的类必须实现_______________ 接口。
-
String
类的________ 、________ 、________ 和________ 四个方法可以使用正则。 - 通过
Obiect
类中的________________ 方法可以取得一个类的Class
对象。 -
Constructor
类定义在________ 包中。 -
Class
类对象的三种实例化方式是________ 、________ 和________ 方法。
二、选择题
-
使用Runtime 类的( )方法,可以释放垃圾内存。
A. exec()
B. run()
C. invoke()
D. gc() -
Object类中的( )方法不能被覆写。
A. toString()
B. getClass()
C. clone()
D. finalize() -
如果要为对象回收做收尾操作,则应该覆写Object 类中的( )方法。
A. toString()
B. getClass()
C. clone()
D. finalize()
三、 判断题
- 任何类的对象数组都可以使用
Arrays.sort()
方法进行排序操作。 ( ) - 可以通过
Class
实例化一个类的对象,但是要求此类必须存在无参构造。 ( ) -
Random
类存放在java.lang
包中。( ) -
Runtime
类的对象可以直接通过构造方法实例化。 ( ) -
Class
类的对象可以通过关键字new
进行实例化操作。 ( )
四、 简答题
-
String
类 和StringBuffer
类的区别是什么?StringBuffer
类提供了哪些独特的方法? - 简述
final
、finally
、finalize()
的区别及作用。 - 简述
Comparable
和Comparator
的区别。
五、 编程题
- 定义一个
StringBuffer
类对象,然后通过append()
方法向对象里添加26个小写字母,要求每次只添加一个,共添加26次。 - 利用
Random
类产生5个1~30(包括1和30)的随机整数。 - 输入一个 E-mail 地址,之后使用正则表达式验证该E-mail 地址是否正确。
- 编写正则表达式,判断给定的是否是一个合法的IP 地址。
- 编写程序,将字符串 “1981-09-1909:07:27.727” 变为
Date
型数据。
2️⃣ 答案
一、填空题
-
String
,StringBuffer
,CharSequence
,length()
-
BigInteger
和BigDecimal
-
Object
,clone()
,Cloneable
-
matches()
、split()
、replaceAll()
和replaceFirst()
getClass()
java.lang.reflect
-
getClass()
、.class
和forName()
二、选择题
- D
- D
- D
三、 判断题
- ( ❌ )
- ( ✔️ )
- ( ❌ )
- ( ❌ )
- ( ❌ )
四、 简答题
-
答:
String
类和StringBuffer
类的主要区别是可变性。String
类是不可变的,意味着一旦创建了一个String
对象,它的值就不可改变。而StringBuffer
类是可变的,可以通过对其进行修改来实现字符串的拼接和修改。StringBuffer
类提供了一些独特的方法,如append()
用于追加字符串,insert()
用于在指定位置插入字符串,delete()
用于删除指定范围内的字符串,reverse()
用于颠倒字符串等。 -
答:
final
、finally
和finalize()
有不同的作用和行为:-
final
关键字可以用于修饰类、方法或变量。当用于类时,表示该类不能被继承;当用于方法时,表示该方法不能被子类重写;当用于变量时,表示该变量的值不可更改。 -
finally
是一个用于异常处理的关键字,在try-catch块中使用。无论是否发生异常,finally
块中的代码都会执行,通常用于释放资源或进行清理操作。 -
finalize()
是一个方法,在一个对象即将被垃圾回收器回收之前调用。这个方法可以被子类覆盖以实现特定的垃圾回收行为,例如释放对象持有的系统资源。
-
-
答:
Comparable
和Comparator
是Java中用于对象比较和排序的接口:-
Comparable
接口是一个内部比较器,实现了它的类具有固定的自然排序规则。该接口定义了compareTo()
方法,用于定义对象之间的比较规则。 -
Comparator
接口是一个外部比较器,可以用于对不同类的对象进行比较和排序。它定义了compare()
方法,用于指定比较规则。通过实现Comparator
接口,可以在不修改原始类的情况下为对象提供不同的排序规则。
-
五、 编程题
-
代码如下:
public class StringBufferExample { public static void main(String[] args) { StringBuffer stringBuffer = new StringBuffer(); for (char c = 'a'; c <= 'z'; c++) { stringBuffer.append(c); } System.out.println(stringBuffer.toString()); } }
-
代码如下:
import java.util.Random; public class RandomExample { public static void main(String[] args) { Random random = new Random(); for (int i = 0; i < 5; i++) { int randomNumber = random.nextInt(30) + 1; System.out.print(randomNumber + " "); } } }
-
代码如下:
import java.util.Scanner; public class EmailValidation { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("请输入一个E-mail地址:"); String email = scanner.nextLine(); boolean isValidEmail = email.matches("[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,}"); if (isValidEmail) { System.out.println("E-mail地址正确!"); } else { System.out.println("E-mail地址不正确!"); } } }
-
代码如下:文章来源:https://www.toymoban.com/news/detail-604072.html
public class IPAddressValidation { public static void main(String[] args) { String ipAddress = "192.168.0.1"; boolean isValidIPAddress = ipAddress.matches( "^((([01]?\\d{1,2}|2[0-4]\\d|25[0-5])\\.){3})(([01]?\\d{1,2}|2[0-4]\\d|25[0-5]))$"); if (isValidIPAddress) { System.out.println("IP地址合法!"); } else { System.out.println("IP地址不合法!"); } } }
-
代码如下:文章来源地址https://www.toymoban.com/news/detail-604072.html
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class StringToDate { public static void main(String[] args) { String dateString = "1981-09-19 09:07:27.727"; SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); try { Date date = format.parse(dateString); System.out.println(date); } catch (ParseException e) { e.printStackTrace(); } } }
到了这里,关于【Java练习题汇总】《第一行代码JAVA》Java常用类库篇,汇总Java练习题——Optional类、包装类、可变字符串支持类、Runtime类、System类、数学运算类、日期时间处理...的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!