Java 基础笔记:文件、递归与字符编码

Java 学习笔记

File 类

File 对象代表具体的文件,只能操作文件本身(不能读写文件内容)。

路径

  • 绝对路径 :带盘符的路径,例如 E:/resource/dlei.jpg
  • 相对路径:不带盘符,默认从 IDEA 工程根目录开始查找,一般用于定位工程内的项目文件

可以使用相对路径来定位 File 对象。


递归算法的三要素

  1. 递归公式f(n) = f(n-1) * n

  2. 递归终结点f(1) = 1

  3. 递归方向必须走向终结点

    f(5) = f(4) * 5
    f(4) = f(3) * 4
    f(3) = f(2) * 3
    f(2) = f(1) * 2
    f(1) = 1


字符集

字符集 说明
ASCII 仅包含英文、数字、符号等,占 1 个字节
GBK 汉字占 2 个字节 ,英文、数字占 1 个字节
UTF-8 汉字占 3 个字节 ,英文、数字占 1 个字节

注意:

  1. 编码时使用的字符集与解码时使用的字符集必须一致,否则会出现乱码。
  2. 英文、数字一般不会乱码,因为很多字符集都兼容 ASCII 编码。

Java 字符编码与解码

编码(字符 → 字节)

String 类的方法:

java 复制代码
byte[] getBytes()                      // 使用默认编码
byte[] getBytes(String charsetName)    // 指定编码

解码(字节 → 字符)

String 类的构造器:

java 复制代码
String(byte[] bytes)                           // 使用默认编码解码
String(byte[] bytes, String charsetName)       // 指定编码解码
相关推荐
程序员黑豆7 小时前
Java类型推断完全指南:从var到菱形运算符,掌握使用限制与最佳实践
java·前端·ai编程
风流 少年8 小时前
Spring AI 2.0:Memory
java·后端·spring
码匠许师傅8 小时前
【C++ 面试真题】聊聊 C++ 的移动语义与右值引用
java·c++·面试
2603_965148118 小时前
如何解析JSON数据?API返回的商品信息处理教程
开发语言·数据库·python·自动化·json·api
bitbrowser8 小时前
giffgaff突然停用?先分清闲置停用和长期境外断开
笔记
九硕智慧建筑一体化厂家9 小时前
数字化管控落地,直流照明构筑安全照明体系
运维·人工智能·笔记·安全·智慧城市
小席是个热心肠9 小时前
AI相关的自我学习
java·人工智能·学习
AI云海9 小时前
天幕红尘笔记
笔记
知无不研11 小时前
lambda表达式的使用(3)
开发语言·c++·lambda
数智化管理手记11 小时前
海量数据如何沉淀有效数据资产?数据标准化治理方案如何搭建?
java·大数据·人工智能