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

网站做推广应该如何来做呢哪里推广站长素材音效网

网站做推广应该如何来做呢哪里推广,站长素材音效网,微信小程序可以做网站用,新手初做网站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/483278.html

相关文章:

  • 龙岩网红街在哪里seo线下培训机构
  • 做网站流程、厦门谷歌seo
  • 网站建设的参考文献英文windows优化大师是病毒吗
  • 南阳做网站优化推广网站seo
  • 彩票网站开发教程厦门seo搜索排名
  • 帝国系统怎样做网站地图建站网站关键词优化
  • 怎么用python做网站百度移动端排名
  • 呼市网站建设市场推广工作内容
  • 温州网站建设优化建站系统主要包括
  • 自助建设手机网站企业推广软文范文
  • 免费做动态图片的网站网站推广策略
  • 邳州做网站徐州自动seo
  • 做搜狗网站优化搜索数据
  • 静态html网址网站导航源码十大免费网站推广平台
  • 0基础如何做网站5118站长网站
  • 数据服务网站策划方案免费推广网站大全
  • 口碑好的做网站公司网络营销在哪里学比较靠谱
  • 动态网站开发流程网络舆情处置的五个步骤
  • 想自己做网站怎么做seo月薪
  • 自己做的网站如何实现下载文件网站注册账号
  • 免费综合网站注册申请谷歌seo营销
  • 广州市专业做商城网站河南省人民政府
  • 上海网站建设领导品牌旅游app推广营销策略
  • 新疆建设工程造价信息网人工费梧州网站seo
  • asp源码自助建站seo的基础是什么
  • 南京h5制作公司seo营销外包公司
  • 工程建设公司网站百度基木鱼建站
  • 上海浦东网站建设百度云搜索引擎入口官网
  • 外贸营销网站建设方案如何自己创建网站
  • 网站永久镜像怎么做怎么建立网站的步骤