复习大纲
文章目录
变量与类型
基本数据类型:
Java中有多种基本数据类型,每种类型都有固定的内存大小和取值范围。
-
整型
byte
: 范围是从-128到127。short
: 范围是从-32768到32767。int
: 范围是从-231到231-1。long
: 范围是从-263到263-1。
byte b = 127; // 最大值 short s = 32767; // 最大值 int i = 2147483647; // 最大值 long l = 9223372036854775807L; // 最大值,需要加上L或者l
-
浮点型
float
: 提供了约7位有效数字。double
: 提供了约15位有效数字。
float f = 3.14f; // 需要加上f或F double d = 3.14159265358979323846;
-
字符型
char
: 表示一个字符。
char c = 'A';
-
布尔型
boolean
: 只有两个值true和false。
boolean f = true;
-
字符串
String
: 虽然不是基本类型,但在Java中非常重要,用于表示文本信息。
String str = "Hello, World!";
引用数据类型(数组与类):
数组用于存储一系列相同类型的数据。
int[] numbers = {1, 2, 3}; // 初始化数组
变量声明与初始化:
变量声明指明变量的名称和类型,初始化则是给变量赋予初始值。
int age = 25; // 声明并初始化
int salary; // 声明
salary = 50000; // 初始化
变量作用域:
- 局部变量: 在方法、构造方法或语句块中定义的变量,仅在该方法或块中可用。
- 成员变量: 在类中但不在方法中定义的变量,类中的方法都能使用。
public class Person {
private count = 0; // 成员变量
public static void incrementCount() {
int a = 1; // 局部变量
count++; // 访问成员变量
}
}
类型转换:
- 自动类型转换: 当低精度类型赋值给高精度类型变量时,如
int i = 123; long l = i;
。 - 强制类型转换: 当高精度类型赋值给低精度类型变量时,需要显式转换,如
double d = 123.45; int i = (int)d;
。
int i = 123;
long l = i; // 自动类型转换
double d = 123.45;
int i2 = (int)d; // 强制类型转换
运算符与输入器
运算符:
- 算术运算符:
+
,-
,*
,/
,%
- 关系运算符:
= =
,! =
,<
,>
,< =
,> =
- 逻辑运算符:
&&
,||
,!
- 赋值运算符:
=
,+=
,-=
,*=
,/=
,%=
- 三元运算符:
? :
int a = 10;
int b = 5;
// 算术运算符
int a1 = a + b;
int a2 = a - b;
int a3 = a * b;
int a4 = a / b;
int a5 = a % b;
// 关系运算符
boolean b1 = a == b;
boolean b2 = a != b;
boolean b3 = a < b;
boolean b4 = a > b;
boolean b5 = a <= b;
boolean b6 = a >= b;
// 逻辑运算符
boolean c1 = a > 0 && b < 10;
boolean c2 = a > 0 || b < 10;
boolean c3 = !(a > 0);
// 赋值运算符
a += b; // 相当于 a = a + b;
a -= b; // 相当于 a = a - b;
a *= b; // 相当于 a = a * b;
a /= b; // 相当于 a = a / b;
a %= b; // 相当于 a = a % b;
// 三元运算符
int result = (a > b) ? a : b;
输入输出流:
使用java.util.Scanner
类来读取用户的输入。
import java.util.Scanner;
public class InputExample {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入一个整数:");
int input = sc.nextInt();
System.out.println("输入的整数为:" + input);
System.out.print("请输入一个字符串:");
String name = sc.next();
System.out.println("输入的字符串为:" + name);
}
}
条件结构与随机数
条件结构:
- if语句: 用于基于条件执行不同的代码块。
- switch语句: 当有多个条件分支时使用。
int age = 18;
if (age >= 18) {
System.out.println("成年人");
} else {
System.out.println("未成年人");
}
int day = 2;
switch (day) {
case 1:
System.out.println("Monday");
break;
case 2:
System.out.println("Tuesday");
break;
default:
System.out.println("Unknown Day");
break;
}
随机数生成:
使用java.util.Random
类来生成随机数:
import java.util.Random;
Random rand = new Random();
int randomInt = rand.nextInt(100); // 生成0到99之间的整数
循环控制结构
循环结构:
- while循环: 当条件为真时持续执行循环体内的代码。
- do…while循环: 先执行循环体,然后再检查条件。
- for循环: 适合已知迭代次数的情况。
int count = 0;
while (count < 5) {
System.out.println(count);
count++;
}
int counter = 0;
do {
System.out.println(counter);
counter++;
} while (counter < 5);
for (int i = 0; i < 5; i++) {
System.out.println(i);
}
break和continue语句:
用于控制循环的流程。
for (int i = 0; i < 10; i++) {
if (i == 5) {
break; // 结束循环
}
if (i % 2 == 0) {
continue; // 跳过本次循环剩余部分
}
System.out.println(i);
}
数组与集合
数组定义:
数组是一系列相同类型元素的集合。定义数组时,需要指定数组的类型和长度。
int[] numbers; // 定义一个整型数组
数组初始化:
数组可以在声明时初始化,也可以在声明后单独初始化。
// 显式初始化
int[] scores = {85, 90, 78};
// 动态初始化
int[] ages = new int[5]; // 创建一个长度为5的整型数组
ages[0] = 20;
ages[1] = 22;
数组操作:
访问数组元素通过索引进行,索引从0开始。
int firstScore = scores[0];
scores[1] = 95;
数组排序:
使用Arrays.sort()
方法可以方便地对数组进行排序。
import java.util.Arrays;
int[] arr = {5, 3, 8, 1};
Arrays.sort(arr); // 对数组进行排序
数组遍历:
遍历数组可以使用for
循环或foreach
循环。
// 使用普通for循环
for (int i = 0; i < scores.length; i++) {
System.out.println(scores[i]);
}
// 使用增强型foreach循环
for (int s : scores) {
System.out.println(s);
}
循环嵌套
多重循环:
嵌套循环是指在一个循环体内包含另一个循环。这种结构通常用于处理需要多次迭代的情况。
打印数字序列:
我们可以使用嵌套循环来打印一些简单的数字序列,例如打印一个数字表格。
// 打印一个数字表格
for (int row = 1; row <= 5; row++) {
for (int col = 1; col <= 5; col++) {
System.out.print(row * col + "\t"); // 每个数字后面加一个制表符
}
System.out.println(); // 每完成一行就换行
}
输出结果:
1 2 3 4 5
2 4 6 8 10
3 6 9 12 15
4 8 12 16 20
5 10 15 20 25
打印星号图案:
我们可以使用嵌套循环来打印一些简单的星号图案,如矩形或三角形。
// 打印一个矩形
for (int row = 1; row <= 5; row++) {
for (int col = 1; col <= 5; col++) {
System.out.print("* "); // 每个星号后面加一个空格
}
System.out.println(); // 每完成一行就换行
}
// 打印一个直角三角形
for (int row = 1; row <= 5; row++) {
for (int col = 1; col <= row; col++) {
System.out.print("* "); // 每个星号后面加一个空格
}
System.out.println(); // 每完成一行就换行
}
输出结果:
* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
*
* *
* * *
* * * *
* * * * *
标签:宝贝,System,运算符,int,数组,println,葵花宝典,Javabase,out
From: https://blog.csdn.net/2403_87236754/article/details/143582434