this.offset=0;
}
+ public String(byte str[], int offset, int length) {
+ if (length>(str.length-offset))
+ length=str.length-offset;
+ char charstr[]=new char[length];
+ for(int i=0;i<length;i++)
+ charstr[i]=(char)str[i+offset];
+ this.value=charstr;
+ this.count=length;
+ this.offset=0;
+ }
+
public String(String str) {
this.value=str.value;
this.count=str.count;
String str=new String();
if (beginIndex>this.count||endIndex>this.count||beginIndex>endIndex) {
// FIXME
+ System.printString("Index error: "+beginIndex+" "+endIndex+" "+count+"\n"+this);
}
str.value=this.value;
str.count=endIndex-beginIndex;
return this.lastindexOf(ch, count - 1);
}
+ public static String concat2(String s1, String s2) {
+ if (s1==null)
+ return "null".concat(s2);
+ else
+ return s1.concat(s2);
+ }
+
public String concat(String str) {
String newstr=new String();
newstr.count=this.count+str.count;
return new String(buffer);
}
+ public String toUpperCase() {
+ char[] buffer=new char[count];
+ for(int i=0;i<count;i++) {
+ char x=charAt(i);
+ if (x>='a'&&x<='z') {
+ x=(char) ((x-'a')+'A');
+ }
+ buffer[i]=x;
+ }
+ return new String(buffer);
+ }
+
public int indexOf(int ch) {
return this.indexOf(ch, 0);
}
if (k>fromIndex)
k=fromIndex;
for(;k>=0;k--) {
- if (regionMatches(fromIndex, str, 0, str.count))
+ if (regionMatches(k, str, 0, str.count))
return k;
}
return -1;
return o.toString();
}
+ public static String valueOf(boolean b) {
+ if (b)
+ return new String("true");
+ else
+ return new String("false");
+ }
+
public static String valueOf(char c) {
char ar[]=new char[1];
ar[0]=c;
return new String(chararray);
}
+ public static String valueOf(long x) {
+ int length=0;
+ long tmp;
+ if (x<0)
+ tmp=-x;
+ else
+ tmp=x;
+ do {
+ tmp=tmp/10;
+ length=length+1;
+ } while(tmp!=0);
+
+ char chararray[];
+ if (x<0)
+ chararray=new char[length+1];
+ else
+ chararray=new char[length];
+ int voffset;
+ if (x<0) {
+ chararray[0]='-';
+ voffset=1;
+ x=-x;
+ } else
+ voffset=0;
+
+ do {
+ chararray[--length+voffset]=(char)(x%10+'0');
+ x=x/10;
+ } while (length!=0);
+ return new String(chararray);
+ }
+
public int hashCode() {
if (cachedHashcode!=0)
return cachedHashcode;