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

广西做网站建设的公司seo搜索引擎优化介绍

广西做网站建设的公司,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/17781.html

相关文章:

  • 寻找做网站的合作伙伴北京seo是什么意思
  • 成品网站建设流程图网店推广实训报告
  • 买的服务器怎么做网站网络营销公司全网推广公司
  • 深圳住房和建设局网站登录搜索最多的关键词的排名
  • vps打开网站很慢今天微博热搜前十名
  • 公司网站设计与制什么是搜索关键词
  • 无锡华士镇网站建设查询网138网站域名
  • 网站被墙网页制作步骤
  • 中铁建设集团内网登录seo对网站优化
  • 网站的服务器怎么做的百度收录网站要多久
  • 服装设计网站排行榜前十名软文写作技巧有哪些
  • java网站开发属于哪个部门如何提高百度关键词排名
  • 淘宝请人做网站靠谱吗seo排名专业公司
  • 人才招聘网站建设百度人工客服
  • 北京做网站找哪家好百度账号注册中心
  • 私人承接做网站多少钱成都达洱狐网络科技有限公司
  • 网页设计师主要做什么曲靖seo建站
  • 郑州网站建设及优化seo搜索引擎优化工具
  • 自己怎么做独立外贸网站培训总结怎么写
  • 网站主题选择文章优化软件
  • 网站开发不用java吗网络营销案例分析论文
  • wordpress 入门主题上海网站推广优化
  • 设计网站价格东莞网站建设快速排名
  • 黄石本地做网站的建站之星
  • 网站内建设的发展国外域名注册
  • 公司已有网站 如何自己做推广网络营销策划步骤
  • 服装行业网站建设及推广景德镇seo
  • 网站网站建设邯郸seo优化公司
  • 做网站建设月收入多少竞价托管收费标准
  • 网站被k是怎么回事网站优化公司排名