java小题练习

import java.util.Scanner;

public class Main {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

复制代码
    // 1. 读取测试次数 n
    int n = scanner.nextInt();
    
    // 创建数组存储每次的分数
    int[] scores = new int[n];
    for (int i = 0; i < n; i++) {
        scores[i] = scanner.nextInt();
    }
    
    // 2. 计算并输出前缀和
    int currentSum = 0; // 用于记录当前的累计总分
    
    for (int i = 0; i < n; i++) {
        currentSum += scores[i]; // 累加当前分数
        // 输出当前累计总分,如果不是最后一次测试,后面加空格
        System.out.print(currentSum);
        if (i < n - 1) {
            System.out.print(" ");
        }
    }
    
    scanner.close();
}

}通过这一系列的练习,我不仅巩固了Java语法,也提升了解题能力。编程能力的提高需要不断的练习和总结,希望这些心得能帮助我在未来的学习中更进一步。

  1. 字符串处理要细心

字符串的输入读取需要根据题目要求选择合适的方法。例如,如果字符串可能包含空格,就必须使用 scanner.nextLine() 而不是 scanner.next() 。

字符的大小写转换、判断和替换等操作,可以充分利用 Character 类和 String 类提供的方法,如 Character.isUpperCase() 、 toLowerCase() 、 replace() 等,这些方法能大大简化代码。

在处理字符串时,要注意边界条件,比如空字符串、长度为1的字符串等,避免出现 StringIndexOutOfBoundsException 异常。

  1. 数组和循环是基础

很多题目都涉及数组的遍历和操作。熟练掌握数组的声明、初始化、遍历是解决问题的基本要求。

在循环中,要注意循环变量的起始和结束条件,特别是当涉及到多层循环时,要清楚每一层循环的意义。

使用 ArrayList 等动态数组可以方便地处理不定长度的数据,但在知道明确长度时,使用普通数组效率更高。