当前位置: 首页 > wzjs >正文

成都建网站多少钱最好用的磁力搜索器

成都建网站多少钱,最好用的磁力搜索器,seo推广模式,培训机构前端开发Java Object 类和 String 类常用 API 一、Object 类核心方法 Object 类是 Java 中所有类的超类,提供了以下重要方法: 1. 基本方法 方法描述重写建议public boolean equals(Object obj)对象相等性比较必须重写(同时重写hashCode&#xff0…

Java Object 类和 String 类常用 API

一、Object 类核心方法

Object 类是 Java 中所有类的超类,提供了以下重要方法:

1. 基本方法

方法描述重写建议
public boolean equals(Object obj)对象相等性比较必须重写(同时重写hashCode)
public int hashCode()返回对象哈希码必须与equals()保持一致
public String toString()返回对象字符串表示推荐重写为友好格式
protected Object clone()创建并返回对象副本需实现Cloneable接口

2. 线程相关方法

方法描述
public final void wait()使当前线程等待
public final void notify()唤醒在此对象监视器上等待的单个线程
public final void notifyAll()唤醒在此对象监视器上等待的所有线程

3. 示例代码

// equals() 和 hashCode() 重写示例
@Override
public boolean equals(Object o) {if (this == o) return true;if (o == null || getClass() != o.getClass()) return false;Person person = (Person) o;return age == person.age && Objects.equals(name, person.name);
}@Override
public int hashCode() {return Objects.hash(name, age);
}// toString() 重写示例
@Override
public String toString() {return "Person{" +"name='" + name + '\'' +", age=" + age +'}';
}

二、String 类常用 API

String 是 Java 中最常用的不可变字符序列类,提供丰富的操作方法。

1. 字符串创建与基本信息

方法描述示例
String()创建空字符串new String()
String(String original)创建字符串副本new String("hello")
int length()返回字符串长度"hello".length() → 5
boolean isEmpty()判断是否空字符串"".isEmpty() → true

2. 字符串比较

方法描述示例
boolean equals(Object anObject)内容相等比较"a".equals("A") → false
boolean equalsIgnoreCase(String anotherString)忽略大小写比较"a".equalsIgnoreCase("A") → true
int compareTo(String anotherString)字典序比较"a".compareTo("b") → -1
int compareToIgnoreCase(String str)忽略大小写字典序比较"A".compareToIgnoreCase("a") → 0

3. 字符串查找

方法描述示例
char charAt(int index)返回指定索引字符"hello".charAt(1) → ‘e’
int indexOf(int ch)返回字符首次出现位置"hello".indexOf('l') → 2
int lastIndexOf(int ch)返回字符最后出现位置"hello".lastIndexOf('l') → 3
boolean contains(CharSequence s)判断是否包含子串"hello".contains("ell") → true
boolean startsWith(String prefix)判断是否以指定前缀开头"hello".startsWith("he") → true
boolean endsWith(String suffix)判断是否以指定后缀结尾"hello".endsWith("lo") → true

4. 字符串操作

方法描述示例
String substring(int beginIndex)截取子串"hello".substring(2) → “llo”
String substring(int beginIndex, int endIndex)截取子串(含头不含尾)"hello".substring(1,4) → “ell”
String concat(String str)字符串连接"hello".concat(" world") → “hello world”
String replace(char oldChar, char newChar)字符替换"hello".replace('l','L') → “heLLo”
String replaceAll(String regex, String replacement)正则替换"a1b2".replaceAll("\\d","") → “ab”
String[] split(String regex)按正则分割字符串"a,b,c".split(",") → [“a”,“b”,“c”]
String toLowerCase()转为小写"HELLO".toLowerCase() → “hello”
String toUpperCase()转为大写"hello".toUpperCase() → “HELLO”
String trim()去除首尾空白符" hello ".trim() → “hello”
String strip()去除首尾空白符(支持Unicode)" hello ".strip() → “hello”

5. 类型转换

方法描述示例
static String valueOf(基本类型/对象)将其他类型转为字符串String.valueOf(123) → “123”
byte[] getBytes()转为字节数组(默认编码)"hello".getBytes()
byte[] getBytes(String charsetName)按指定编码转为字节数组"你好".getBytes("UTF-8")
char[] toCharArray()转为字符数组"hello".toCharArray() → [‘h’,‘e’,‘l’,‘l’,‘o’]

6. JDK 8+ 新增方法

方法描述示例
String join(CharSequence delimiter, CharSequence... elements)静态方法,用分隔符连接字符串String.join("-","a","b","c") → “a-b-c”
boolean isBlank()判断是否空白字符串(JDK11)" ".isBlank() → true
String stripLeading()去除开头空白(JDK11)" hello ".stripLeading() → "hello "
String stripTrailing()去除末尾空白(JDK11)" hello ".stripTrailing() → " hello"
String repeat(int count)重复字符串(JDK11)"a".repeat(3) → “aaa”
String formatted(Object... args)格式化字符串(JDK15)"Hi %s".formatted("Tom") → “Hi Tom”

三、最佳实践

  1. 字符串比较:总是使用 equals() 而不是 == 比较内容
  2. 字符串拼接
    • 少量拼接用 +
    • 循环内拼接用 StringBuilder
    • 多元素拼接用 String.join()
  3. 不可变性:记住String是不可变的,所有修改操作都返回新对象
  4. 编码注意:处理非ASCII字符时明确指定字符编码

四、性能考虑

  1. 字符串常量池:字面量字符串会被放入常量池复用
    String s1 = "hello";  // 使用常量池
    String s2 = new String("hello");  // 新建对象
    
  2. 大字符串处理:考虑使用 StringBuilderStringBuffer(线程安全)
  3. 正则表达式:复杂正则预编译 Pattern 对象提高性能

五、常见面试问题

  1. String、StringBuilder、StringBuffer区别?

    • String:不可变,线程安全
    • StringBuilder:可变,非线程安全,性能高
    • StringBuffer:可变,线程安全(synchronized方法)
  2. 为什么String设计为不可变?

    • 安全性:作为参数传递时不会被修改
    • 线程安全:天然线程安全
    • 缓存哈希码:只需计算一次
    • 字符串常量池:可以安全地复用字符串
  3. 如何高效拼接字符串?

    // 低效(产生多个中间对象)
    String result = "";
    for (int i = 0; i < 100; i++) {result += i;
    }// 高效
    StringBuilder sb = new StringBuilder();
    for (int i = 0; i < 100; i++) {sb.append(i);
    }
    String result = sb.toString();
    
http://www.dtcms.com/wzjs/325825.html

相关文章:

  • 成都网站优化方案北京专业网站优化
  • 盐城市滨海县建设局网站百度热搜榜怎么打开
  • _网站建设网站百度题库
  • 拼多多网站首页seo顾问收费
  • 建设网站建设哪家便宜如何免费推广自己的产品
  • 设计网站的在工作中的品牌网站亚马逊关键词工具哪个最准
  • 电子产品网站建设学seo需要学什么专业
  • bootstrap模板网信息流优化师没经验可以做吗
  • 创意集团网站建设谷歌优化培训
  • 做公司网站多钱搜索关键词排名优化技术
  • 做网站和管理系统在线建站平台免费建网站
  • 学企业网站开发如何做线上营销
  • 公司做网站推广要注意什么电商运营培训班
  • 关于企业网站建设的请示企业软文
  • 学校多语言网站建设站长工具收录查询
  • 网站设计与开发培训怎样精准搜索关键词
  • 自己做的网站怎么在百度搜索到seo外链发布技巧
  • 响应式网站制作价格爱站网站长seo综合查询
  • 头像在线制作网站百度统计官网
  • 公司销售网站怎么做问卷调查网站
  • 做搬家网站推广在那好二级不死域名购买
  • 医院网站运营方案app推广接单
  • 舟山网站建设优化长沙专业网络推广公司
  • 房产网站代运营免费友链互换
  • 二手书屋网站开发的意义天琥设计培训学校官网
  • 网站建设的硬件支持日本产品和韩国产品哪个好
  • 免费制作图片带字 手机软件山西优化公司
  • java 门户网站开发框架seo网络营销外包公司
  • 美国疫情最新数据消息seo交流中心
  • 太仓住房与城乡建设部网站品牌运营策划方案