# Buchstabe in String finden



## HansGoldhahn (1. Mai 2010)

Hallo, habe das Problem das ich in einem String nach einem bestimmten buchstaben suchen möchte, und dann eine funktion auszulösen.

hier mein code und die stelle an der ich glaub ich eine schleife starten möchte, damit jeder einzelne buchstabe in dem string verglichen wird.


```
public void run() {
		String strA = new String ("A");
		String strB = new String ("B");
		String str1;
		int i;
		byte[] in;
		Thread me = Thread.currentThread();
		while (timer == me) {
			try {
				Thread.currentThread().sleep(200);
			}
                        catch (InterruptedException e) { }
	  		if ( (gtp != null) && ((i = gtp.available()) > 0) ) {
				in = gtp.receive();
						/* remove non-printing bytes */
				for (i = 0; i < in.length; i++) {
					if (in[i] < 0x20)
						in[i] = 0x20;
				}
				output_box.append((new String(in)) + i );
				output_box.append("0" );
				
			str1 = output_box.getText();

			// hier schleife starten glaube ich

			if (str1.equals(strA)) {
	  		output_box.setText("Parameter 1 empfangen");;
 			}
			else if (str1.equals(strB)) {
	  		output_box.append("Parameter 2 empfangen" );
 			}
			
			}
		}
	}
```

bitte helft mir hier weiter, hab keinen plan wie ich das lösen könnte.

Danke schon mal im vorraus


----------



## HansGoldhahn (1. Mai 2010)

hab das jetz mal so umgesetzt, ist das richtig, kann das funktionieren?


```
public void run() {
		String strA = new String ("A");
		String strB = new String ("B");
		String str1;
		String str;
		int i;
		byte[] in;
		Thread me = Thread.currentThread();
		while (timer == me) {
			try {
				Thread.currentThread().sleep(200);
			}
                        catch (InterruptedException e) { }
	  		if ( (gtp != null) && ((i = gtp.available()) > 0) ) {
				in = gtp.receive();
						/* remove non-printing bytes */
				for (i = 0; i < in.length; i++) {
					if (in[i] < 0x20)
						in[i] = 0x20;
				}
				output_box.append((new String(in)) + i );
				output_box.append("0" );
				
			str1 = output_box.getText();

			// hier schleife starten glaube ich

			for (int a = 0; a < str1.length(); a++) {
            		 
				str = str1.charAt(a);
            			if (str.equals(strA)) {
            				output_box.setText("Parameter 1 empfangen");;
         			  	  			
 					}
				else if (str.equals(strB)) {
	  				output_box.append("Parameter 2 empfangen" );
 					}
         		     	}
			
			}
		}
	}

	public void check() {
		
		boolean param1; 
		
		boolean param2 ;

		

	}
    	
}
```


----------



## Gast2 (1. Mai 2010)

Dafür gibts auchschon ne fertige Methode:
String (Java 2 Platform SE v1.4.2)


----------



## FArt (1. Mai 2010)

HansGoldhahn hat gesagt.:


> hab das jetz mal so umgesetzt, ist das richtig, kann das funktionieren?



Funktioniert es denn nicht?


----------

