package pack2;
import java.util.Arrays;
public class MyString2 {
private String s;
/**带指定字符串的构造方法*/
public MyString2(String s) {
this.s = s;
}
/**返回本字符串与指定字符串的比较
* 大于:返回 1
* 等于:返回 0
* 小于:返回-1*/
public int compareTo(String s) {
int n = Math.min(this.s.length(), s.length());
for (int i = 0; i < n; i++) {
if(this.s.charAt(i) > s.charAt(i)) return 1;
if(this.s.charAt(i) < s.charAt(i)) return -1;
}
if(this.s.length() == s.length()) return 0;
return (this.s.length() > n) ? 1 : -1;
}
/**返回从 begin 开始的子串*/
public MyString2 substring(int begin) {
return new MyString2(s.substring(begin));
}
/**返回大写形式*/
public MyString2 toUpperCase() {
return new MyString2(s.toUpperCase());
}
/**返回字符数组形式*/
public char[] toChars() {
return s.toCharArray();
}
/**返回布尔值的字符串的静态方法*/
public static MyString2 valueOf(boolean b) {
return new MyString2(b + "");
}
@Override
public String toString() {
return s;
}
//————————————————————————————————————————————————————————————
public static void main(String[] args) {
MyString2 myString2 = new MyString2("String");
System.out.println(myString2);
System.out.println(myString2.toUpperCase());
System.out.println(myString2.compareTo("String is a series of letters."));
System.out.println(Arrays.toString(myString2.toChars()));
System.out.println(MyString2.valueOf(true));
System.out.println(myString2.substring(5));
}
}