You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
68 lines
1.8 KiB
68 lines
1.8 KiB
public class MiniString {
|
|
private String str;
|
|
public MiniString(String str) {
|
|
this.str = str;
|
|
}
|
|
public String makeSubstring(int beginIndex) {
|
|
int length = this.str.length();
|
|
String ret = "";
|
|
for (int i = beginIndex; i < length; i++){
|
|
ret += this.str.charAt(i);
|
|
}
|
|
return ret;
|
|
}
|
|
public String makeSubstring(int beginIndex, int endIndex) {
|
|
int length = this.str.length();
|
|
String ret = "";
|
|
for (int i = beginIndex; i < endIndex; i++){
|
|
ret += this.str.charAt(i);
|
|
}
|
|
return ret;
|
|
}
|
|
public int findIndexOf(char ch) {
|
|
int ret = -1;
|
|
for (int i = 0; i < this.str.length(); i ++ ){
|
|
if (this.str.charAt(i) == ch) {
|
|
ret = i;
|
|
break;
|
|
}
|
|
}
|
|
return ret;
|
|
}
|
|
public int findIndexOf(char ch, int fromIndex) {
|
|
int ret = -1;
|
|
for (int i = fromIndex; i < this.str.length(); i ++ ){
|
|
if (this.str.charAt(i) == ch) {
|
|
ret = i;
|
|
break;
|
|
}
|
|
}
|
|
return ret;
|
|
}
|
|
public int findIndexOf(String str) {
|
|
int ret = -1;
|
|
int sub_length = str.length();
|
|
String cur_str;
|
|
for (int i = 0; i < this.str.length() - sub_length; i++){
|
|
cur_str = this.makeSubstring(i,i + sub_length);
|
|
if (cur_str.equals(str)) {
|
|
ret = i;
|
|
break;
|
|
}
|
|
}
|
|
return ret;
|
|
}
|
|
public int findIndexOf(String str, int fromIndex) {
|
|
int ret = -1;
|
|
int sub_length = str.length();
|
|
String cur_str;
|
|
for (int i = fromIndex; i < this.str.length() - sub_length; i++){
|
|
cur_str = this.makeSubstring(i,i + sub_length);
|
|
if (cur_str.equals(str)) {
|
|
ret = i;
|
|
break;
|
|
}
|
|
}
|
|
return ret;
|
|
}
|
|
}
|