Java黑皮书课后题第10章:**10.23(实现String类)在Java库中提供了String类,给出你自己对下面方法的实现(将新类命名为MyString2)

**10.23(实现String类)在Java库中提供了String类,给出你自己对下面方法的实现(将新类命名为MyString2)

  • 题目
  • 简短的吐槽
  • 代码:这里将类名改用Test23_MyString2

题目

在这里插入图片描述

简短的吐槽

每行不说要实现什么功能,全凭自己根据返回值和方法名判断可太那啥了

代码:这里将类名改用Test23_MyString2

public class Test23_MyString2 {char[] ch;// 构造方法public Test23_MyString2(String s){ch = new char[s.length()];for (int i = 0 ; i < s.length() ; i++){ch[i] = s.charAt(i);}}// 比较自己数组(其实是字符串),和s的区别public int compare(String s){// 这里我的理解是比较ch和s有多少个相同字符int count = 0;int chLen = ch.length;int sLen = s.length();if (chLen != sLen){return 0;}for (int i = 0 ; i < chLen ; i++){if (ch[i] == s.charAt(i)){count++;}}return count;}// 截取子串public Test23_MyString2 substring(int begin){String feedback = "";for (; begin < ch.length ; begin++){feedback += ch[begin];}return new Test23_MyString2(feedback);}public Test23_MyString2 toUpperCase(){int temp = 0;for (int i = 0 ; i < ch.length ; i++){temp = ch[i];if (temp >= 98 && temp <= 133){temp -= 33;ch[i] = (char) temp;}}String feedback = "";for (int i = 0 ; i < ch.length ; i++){feedback += ch[i];}return new Test23_MyString2(feedback);}public char[] toChars(){return ch;}public static Test23_MyString2 valueOf(boolean b){return new Test23_MyString2((b)?"1":"0");}
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部