Java基础练习题
发布人:shili8
发布时间:2025-02-25 03:57
阅读次数:0
**Java基础练习题**
### 一、基本语法####1.1 变量和数据类型* **变量定义**
java// int型变量int a =10; // double型变量double b =3.14; // boolean型变量boolean c = true;
* **常用数据类型**
java// byte型变量byte d =127; // short型变量short e =32767; // long型变量long f =2147483647L; // float型变量float g =3.14F;
* **基本运算符**
javaint x =10; int y =5; System.out.println(x + y); // 输出15System.out.println(x - y); // 输出5System.out.println(x * y); // 输出50System.out.println(x / y); // 输出2
* **比较运算符**
javaint x =10; int y =5; System.out.println(x == y); // 输出falseSystem.out.println(x != y); // 输出trueSystem.out.println(x > y); // 输出trueSystem.out.println(x < y); // 输出false
* **逻辑运算符**
javaboolean x = true; boolean y = false; System.out.println(x && y); // 输出falseSystem.out.println(x || y); // 输出trueSystem.out.println(!x); // 输出false
####1.2 控制结构* **if语句**
javaint x =10;
if (x >5) {
System.out.println("x大于5");
}
* **switch语句**
javaint x =3;
switch (x) {
case1:
System.out.println("x等于1");
break;
case2:
System.out.println("x等于2");
break;
default:
System.out.println("x不等于1或2");
}
* **for循环**
javafor (int i =0; i < 5; i++) {
System.out.println(i);
}
* **while循环**
javaint i =0;
while (i < 5) {
System.out.println(i);
i++;
}
####1.3 数组* **数组定义**
javaint[] arr = new int[5];
* **数组元素访问**
javaint[] arr = {1,2,3,4,5};
System.out.println(arr[0]); // 输出1* **数组长度**
javaint[] arr = {1,2,3,4,5};
System.out.println(arr.length); // 输出5####1.4 方法* **方法定义**
javapublic class MethodExample {
public static void main(String[] args) {
System.out.println(add(10,20));
}
public static int add(int a, int b) {
return a + b;
}
}
* **方法参数**
javapublic class MethodExample {
public static void main(String[] args) {
System.out.println(greet("John"));
}
public static String greet(String name) {
return "Hello, " + name;
}
}
### 二、面向对象####2.1 类和对象* **类定义**
javapublic class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public void sayHello() {
System.out.println("Hello, my name is " + name + " and I am " + age + " years old.");
}
}
* **对象创建**
javapublic class Main {
public static void main(String[] args) {
Person person = new Person("John",30);
person.sayHello();
}
}
####2.2 构造函数* **无参构造函数**
javapublic class Person {
private String name;
private int age;
public Person() {
this.name = "Unknown";
this.age =0;
}
// ...
}
* **有参构造函数**
javapublic class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
// ...
}
####2.3 getter和setter* **getter**
javapublic class Person {
private String name;
public String getName() {
return name;
}
}
* **setter**
javapublic class Person {
private String name;
public void setName(String name) {
this.name = name;
}
}
####2.4 继承* **继承类定义**
javapublic class Animal {
// ...
}
public class Dog extends Animal {
// ...
}
* **继承方法**
javapublic class Animal {
public void sound() {
System.out.println("Animal makes a sound.");
}
}
public class Dog extends Animal {
@Override public void sound() {
System.out.println("Dog barks.");
}
}
####2.5 多态* **多态定义**
javapublic class Shape {
// ...
}
public class Circle extends Shape {
// ...
}
public class Rectangle extends Shape {
// ...
}
* **多态方法**
javapublic class Shape {
public void draw() {
System.out.println("Drawing a shape.");
}
}
public class Circle extends Shape {
@Override public void draw() {
System.out.println("Drawing a circle.");
}
}
public class Rectangle extends Shape {
@Override public void draw() {
System.out.println("Drawing a rectangle.");
}
}
### 三、异常####3.1 异常定义* **自定义异常**
javapublic class CustomException extends Exception {
// ...
}
public class Main {
public static void main(String[] args) {
try {
throw new CustomException();
} catch (CustomException e) {
System.out.println("Caught custom exception.");
}
}
}
* **预定义异常**
javapublic class Main {
public static void main(String[] args) {
try {
int x =10 /0;
} catch (ArithmeticException e) {
System.out.println("Caught arithmetic exception.");
}
}
}
####3.2 异常处理* **try-catch块**
javapublic class Main {
public static void main(String[] args) {
try {
int x =10 /0;
} catch (ArithmeticException e) {
System.out.println("Caught arithmetic exception.");
}
}
}
* **finally块**
javapublic class Main {
public static void main(String[] args) {
try {
int x =10 /0;
} catch (ArithmeticException e) {
System.out.println("Caught arithmetic exception.");
} finally {
System.out.println("Finally block executed.");
}
}
}
####3.3 异常传递* **异常传递**
javapublic class Main {
public static void main(String[] args) {
try {
method1();
} catch (Exception e) {
System.out.println("Caught exception in main.");
}
}
public static void method1() throws Exception {
throw new Exception();
}
}
* **异常传递链**
javapublic class Main {
public static void main(String[] args) {
try {
method2();
} catch (Exception e) {
System.out.println("Caught exception in main.");
}
}
public static void method1() throws Exception {
throw new Exception();
}
public static void method2() throws Exception {
method1();
}
}
### 四、集合####4.1 集合定义* **List接口**
javapublic class ListExample {
public static void main(String[] args) {
List list = new ArrayList<>();
list.add("Apple");
list.add("Banana");
System.out.println(list);
}
}
* **Set接口**
javapublic class SetExample {
public static void main(String[] args) {
Set set = new HashSet<>();
set.add("Apple");
set.add("Banana");
System.out.println(set);
}
}
####4.2 集合操作* **List集合**
java

