| StringMan2.java |
1 /**
2 * 183.592 Programmierpraxis TU Wien WS2014/15 H.Moritsch
3 * Verwendung von Strings und Character-Arrays
4 */
5 public class StringMan2 {
6 public static void main(String[] args) {
7
8 String s = "Programmierpraxis";
9 char[] a;
10
11 System.out.println( "/" + s + "/");
12
13 System.out.println( istenthalten (s, 'a') );
14
15 System.out.println( istenthalten (s, 'u') );
16
17
18 a = s.toCharArray();
19 verschiebelinks(a);
20 System.out.println( "/" + String.valueOf(a) + "/");
21
22 a = s.toCharArray();
23 verschieberechts(a);
24 System.out.println( "/" + String.valueOf(a) + "/");
25
26 }
27
28 /**
29 * Prüft, ob ein Zeichen in einem String vorkommt
30 */
31 private static boolean istenthalten(String s, char z) {
32 boolean gefunden = false;
33
34 // Schleife über alle Zeichen
35 for (int i = 0; i < s.length() && !gefunden ; i++) { // bis das Zeichen gefunden wurde
36 System.out.println("i = " + i );
37 if ( s.charAt(i) == z)
38 gefunden = true; // das Zeichen wurde gefunden
39 }
40
41 return gefunden;
42 }
43
44 /**
45 * Verschiebt um eine Stelle nach links und füllt mit ' ' auf
46 */
47 private static void verschiebelinks(char[] a) {
48
49 for (int i = 0; i < a.length-1; i++) {
50
51 a[ i ] = a[ i+1 ]; // ersetze Zeichen durch jenes rechts davon
52 }
53
54 a[ a.length-1 ] = ' '; // setze letztes Zeichen auf Leerzeichen
55 }
56
57 /**
58 * Verschiebt um eine Stelle nach rechts und füllt mit ' ' auf
59 */
60 private static void verschieberechts(char[] a) {
61
62 for (int i = a.length-1; i > 0; i--) { // beginne beim letzten Zeichen!
63
64 a[ i ] = a[ i-1 ]; // ersetze Zeichen durch jenes links davon
65 }
66
67 a[ 0 ] = ' '; // setze erstes Zeichen auf Leerzeichen
68 }
69
70 }
71