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)       // 指定编码解码
相关推荐
前端百草阁9 小时前
JavaScript 设计模式(23 种)
开发语言·前端·javascript·设计模式
EntyIU9 小时前
Java NIO 实战
java·开发语言·nio
二宝哥9 小时前
springboot项目使用Gradle工具实现依赖版本控制
java·spring boot·后端·gradle·版本
chushiyunen9 小时前
word使用笔记(二)、邮件合并(模板套用)
笔记·word
浩瀚之水_csdn9 小时前
Python 3 网络编程详解:从原理到实战
开发语言·网络·python
济*沧*海9 小时前
Set集合深度解析:原理、特性与应用场景全攻略
java
geovindu9 小时前
java: Singleton Pattern
java·开发语言·后端·单例模式·设计模式·创建型模式
AI行业学习9 小时前
2026 版 Notepad++ 完整图文安装指南|官方渠道无捆绑,一键切换中文界面
开发语言·人工智能·python·html·notepad++
鹏易灵10 小时前
C++——7.类与对象,掌握封装、继承、多态.详解
开发语言·c++·算法
一路向北North10 小时前
Spring Security OAuth2.0(16):密码模式
java·后端·spring