实现 String类)在Java库中提供了String类,给出你自己对下面方法的实现(将新类 命名为MyString2): public MyString2(String s);public int compare(String s); public MyString2 substring(int begin);public MyString2 toUpperCaseO;public char[]toChars(); public static MyString2 valueOf(boolean b);
时间: 2024-01-09 12:03:38 浏览: 27
下面是对这些方法的 MyString2 类的实现:
```java
public class MyString2 {
private char[] chars;
// 构造函数
public MyString2(String s) {
chars = s.toCharArray();
}
// 比较两个字符串的大小,返回值为 0 表示相等,小于 0 表示该字符串小于参数字符串,大于 0 表示该字符串大于参数字符串
public int compare(String s) {
char[] sChars = s.toCharArray();
int len = Math.min(chars.length, sChars.length);
for (int i = 0; i < len; i++) {
if (chars[i] != sChars[i]) {
return chars[i] - sChars[i];
}
}
return chars.length - sChars.length;
}
// 截取从 begin 开始到字符串结尾的子串
public MyString2 substring(int begin) {
char[] subChars = new char[chars.length - begin];
System.arraycopy(chars, begin, subChars, 0, subChars.length);
return new MyString2(new String(subChars));
}
// 将字符串转换为全大写的形式
public MyString2 toUpperCase() {
char[] upperChars = new char[chars.length];
for (int i = 0; i < chars.length; i++) {
upperChars[i] = Character.toUpperCase(chars[i]);
}
return new MyString2(new String(upperChars));
}
// 将字符串转换为字符数组
public char[] toChars() {
char[] copyChars = new char[chars.length];
System.arraycopy(chars, 0, copyChars, 0, chars.length);
return copyChars;
}
// 将 boolean 类型的值转换为字符串
public static MyString2 valueOf(boolean b) {
return new MyString2(String.valueOf(b));
}
}
```
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![xlsx](https://img-home.csdnimg.cn/images/20210720083732.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)