// meinString.java public class meinString { private char zeichenkette[] = null; private int laenge = 0; meinString(){ zeichenkette = null; laenge = 0; } meinString(char[] zeichenkette){ this.zeichenkette = new char[zeichenkette.length]; for (int i = 0; i < zeichenkette.length; i++) this.zeichenkette[i] = zeichenkette[i]; laenge = zeichenkette.length; } meinString(meinString kopierString){ this.zeichenkette = new char[kopierString.holeLaenge()]; for (int i = 0; i < kopierString.holeLaenge(); i++) this.zeichenkette[i] = kopierString.holeZeichen(i); laenge = this.zeichenkette.length; } public meinString konkateniere (meinString addierString){ int temp_laenge = this.holeLaenge() + addierString.holeLaenge(); char temp_zeichenkette[] = new char[temp_laenge]; for (int i = 0; i < this.holeLaenge(); i++) { temp_zeichenkette[i] = this.zeichenkette[i]; } for (int i = this.holeLaenge(); i < temp_laenge; i++) { temp_zeichenkette[i] = addierString.holeZeichen(i - this.holeLaenge()); } zeichenkette = temp_zeichenkette; laenge = zeichenkette.length; return this; } public char holeZeichen(int at) { if (at > laenge) { System.out.println("Fehler, gewuenschte Position nicht im Array enthalten!"); return 'f'; } char zeichen = zeichenkette[at]; return zeichen; } public void setzeZeichen(int at, char zeichen){ if (at > laenge) System.out.println("Fehler, gewuenschte Position nicht im Array enthalten!"); else zeichenkette[at] = zeichen; return; } public char[] holeZeichenkette(){ char zeichenkette_temp[] = new char[laenge]; for (int i = 0; i < laenge; i++) zeichenkette_temp[i] = zeichenkette[i]; return zeichenkette_temp; } public void setzeZeichenkette(char[] zeichenkette) { this.zeichenkette = new char[zeichenkette.length]; for (int i = 0; i < zeichenkette.length; i++) this.zeichenkette[i] = zeichenkette[i]; this.laenge = this.zeichenkette.length; return; } public void print() { if (laenge == 0) return; System.out.print(zeichenkette); System.out.println(); return; } public int holeLaenge() { return laenge; } public static void main(String[] argv) { char zeichenkette1[] = new char[] {'h', 'e', 'l', 'l', 'o', ' '}; char zeichenkette2[] = new char[] {'w', 'o', 'r', 'l', 'd'}; meinString String1 = new meinString(zeichenkette1); meinString String2 = new meinString(zeichenkette2); System.out.print("String1: "); String1.print(); System.out.print("String2: "); String2.print(); meinString String3 = new meinString(); System.out.print("String3: "); String3.setzeZeichenkette(String1.holeZeichenkette()); String3.print(); System.out.println("Laenge String3: " + String3.holeLaenge()); String3.konkateniere(String2); System.out.println("Laenge String3 neu: " + String3.holeLaenge()); String3.print(); String3.setzeZeichen(0, 'H'); String3.setzeZeichen(6, 'W'); String3.print(); System.out.println(String3.holeZeichen(2)); } }