方法、数组与字符串:把逻辑拆干净
方法、数组与字符串:把逻辑拆干净
如果把程序比作一篇文章,方法就是段落,数组是清单,字符串是你每天都要处理的文本。本周目标:写出可复用的小函数,而不是把所有代码塞进 main。
方法:给一段逻辑起名字
public class Calculator {
public static int add(int a, int b) {
return a + b;
}
public static void main(String[] args) {
System.out.println(add(3, 5)); // 8
}
}
要点:
- 参数:输入
- 返回值:输出(
void表示无返回) - 方法名:用动词短语,如
add、findMax、printReport
方法重载
同名方法,参数列表不同,叫重载:
public static int add(int a, int b) { return a + b; }
public static double add(double a, double b) { return a + b; }
编译器根据你传入的参数类型决定调用哪一个。
数组:固定长度的盒子
int[] scores = {90, 85, 78, 92};
int sum = 0;
for (int score : scores) {
sum += score;
}
double avg = (double) sum / scores.length;
System.out.println("平均分: " + avg);
记住:
- 下标从 0 开始
length是长度- 数组创建后长度不可变(可变长度以后用
ArrayList)
练习:找最大值
public static int max(int[] nums) {
int m = nums[0];
for (int i = 1; i < nums.length; i++) {
if (nums[i] > m) {
m = nums[i];
}
}
return m;
}
字符串 String
String 用得极多,先掌握高频操作:
String name = "YoungGc";
System.out.println(name.length()); // 7
System.out.println(name.toUpperCase()); // YOUNGGC
System.out.println(name.contains("Gc")); // true
System.out.println("Eden" + "手记"); // 拼接
注意:String 不可变。看起来像修改,其实往往是生成了新对象。现阶段知道这一点即可。
输入(可选)
import java.util.Scanner;
Scanner sc = new Scanner(System.in);
System.out.print("请输入名字: ");
String input = sc.nextLine();
System.out.println("你好, " + input);
本周小项目:命令行计算器
要求:
- 支持加减乘除四个方法
- 从控制台读两个数字和运算符
- 除法注意除数为 0 的提示(先用
if判断)
能跑通就算过关;美不美观不重要。
本周练习清单
常见坑
| 坑 | 正解 |
|---|---|
字符串用 == 比较 |
用 equals |
| 整除丢小数 | 先转 double |
| 数组越界 | 检查下标范围 |
写在最后
把大问题拆成方法,是程序员的基本功。Eden 里先长出小对象,再谈复杂系统。
YoungGc · Eden手记
学习是第一生产力。
如发现有错误欢迎指正,欢迎交流,接受反驳。 -- by不为 :)

浙公网安备 33010602011771号