![]() |
| | Themen-Optionen | Thema durchsuchen |
| | Nach oben #1 |
| Gast
Beiträge: n/a
|
Hallo, weis zufällig einer wie ich ein array nach einem bestimmten wert durchsuche ? z.B. möchte ich ganzes array nach der zahl 5 durchsuchen, und ich möchte wissen wieviel mal sie in der array vorhanden ist ^^[/highlight] |
|
| | Nach oben #2 |
| Benjamin Klaile Registriert seit: 02.12.2004 Ort: Remagen
Beiträge: 4.512
|
hi. z.b. so Code: int[] testArray = { 1, 5, 8, 5, 9, 10, 5, 5, 1 };
int zaehler = 0;
int gesucht = 5;
for( int i = 0; i < testArray.length; i++ )
{
if( testArray[i] == gesucht )
{
zaehler++;
}
}
System.out.println( gesucht + " ist " + zaehler + " mal vorhanden." );
|
| | |
| | Nach oben #4 | |
| Erfahrener Benutzer Registriert seit: 02.02.2005
Beiträge: 539
| Zitat:
| |
| | |
| | Nach oben #7 |
| Benjamin Klaile Registriert seit: 02.12.2004 Ort: Remagen
Beiträge: 4.512
|
hm. ja, so pauschal kann man das ja nicht erklären. also ich könnte hier jetzt was schreiben, aber dann würden da direkt mal weitere 14fragen draufkommen. ich muss mal darüber nachdenken, wie ich das am besten formuliere. zunächst einmal würde ich dir raten, dass du eine methode in der klasse schreibst, die diese funktionalität (also die suche nach einem element in einem array) öfters verwendet. wenn das nur einmal aufgerufen wird brauchst du auch keine methode. (das stimmt so nicht ganz, aber lassen wir das mal so stehen *g*) Code: private int countEqualValues( int zahl )
{
// obige schleife
return zaehler;
}
Code: int anzahlFuenfen = countEqualValues( 5 ); |
| | |
| | Nach oben #8 |
| Projektleiter Registriert seit: 30.11.2005 Ort: Bottrop
Beiträge: 1.129
| Code: public class ArrayUtils {
public static int count(int data[], int needle) {
int count = 0;
for(int i = 0; i < data.length; i++) {
if(data[i] == needle) {
count++;
}
}
return count;
}
}
Code: int count = ArrayUtils.count(new int[] {4, 5, 6,32, 5, 5, 5, 2, 4, 6}, 5);
System.out.println("5 ist "+count+" mal vorhanden");
|
| | |
| | Nach oben #10 |
| Gast
Beiträge: n/a
|
Was verstehst du daran denn nicht? Der einzige wirkliche Unterschied zwischen den beiden Ansätzen besteht darin, das TheDragonMaster eine Klassenmethode verwendet und anstatt das Array in der Methode zu deklarieren u. initialisieren übergibt er es der Methode: Code: public static int count(int data[], int needle) {
Btw. hab zwar absolut keine Ahnung von PHP, aber liefert folgender Code wirklich die Häufigkeit des Elementes im Array zurück ? Code: if(in_array("wert", $array)) echo "Ist drin";
|
|
| | Nach oben #11 |
| Benjamin Klaile Registriert seit: 02.12.2004 Ort: Remagen
Beiträge: 4.512
|
hallo, sag einfach, was du nicht verstehst. das ist jetzt kein handwerk .. du könntest das natürlich einfach übernehmen .. und dann würdest du immer wieder mit "static" arbeiten. das ist aber nicht sinn der sache. in DMs beitrag ist es so, dass er die methode als static deklariert, damit man auf sie ohne eine instanz der klasse zugreifen kann. du musst also nicht das hier machen: Code: ArrayUtils utils = new ArrayUtils(); utils.methode(); Code: ArrayUtils.methode(); das kennst du z.b. hier System.out.println() oder Math.sqrt(). wenn du etwas nicht verstanden hast .. dann frag einfach grüße ben. |
| | |
| | Nach oben #12 |
| Gast
Beiträge: n/a
|
Ömm, von dir @ Ben habe ich eigentlich alles verstanden ^^ Is ne gutte anleitung da Hab von TheDragon master nicht alles verstanden ^^ Weis net was: Code: public class ArrayUtils {
public static int count(int data[], int needle) {
und return count; sagt mir auch nichts habe ja auch nicht alles daran nicht verstanden, nur public static und public class ArrayUtils + return . @ mic_checker Jap, genau, if(in_array("wert", $array)) echo "Ist drin"; überprüft nur ob der wert "wert" in der variable $array vorhanden ist. |
|
| | Nach oben #13 |
| Benjamin Klaile Registriert seit: 02.12.2004 Ort: Remagen
Beiträge: 4.512
|
zum Code: return count; Code: return zaehler; du gibst eben den wert zurück, der in der methode ermittelt wurde. das Code: public static wenn DragonMaster das ohne static geschrieben hätte, dann müsstest du ein objekt anlegen Code: ArrayUtils utils = new ArrayUtils(); das Code: public class ArrayUtils "class" sagt eben nur aus, dass es sich dabei um eine klasse handelt und "public" ist ein modifier. wenn du das public weglässt, dann wird der default gewählt, dann gibt es noch private und protected. musst du mal irgendwo nachschlagen grüße ben. |
| | |
| | Nach oben #14 |
| Projektleiter Registriert seit: 30.11.2005 Ort: Bottrop
Beiträge: 1.129
|
Hast du dich überhaupt schonmal mit Java beschäftigt? Wenn nicht solltest du vielleicht mal sowas wie javabuch.de oder "Java ist auch eine Insel" lesen. Das sind eigentlich die absoluten Grundlagen. Ich werde das auch nicht weiter erklären, weil dass bereits unzählige Male getan wurde. Davon abgesehen fürchte ich, dass meine Erklärung dazu führen würde, dass du nur noch mehr Fragen hast. ^^" |
| | |
| | Nach oben #19 |
| Benjamin Klaile Registriert seit: 02.12.2004 Ort: Remagen
Beiträge: 4.512
|
Morgen, dann kannst Du kein Array verwenden uns musst auf eine Collection zurückgreifen. Die sind etwas anders aufgebaut bzw. Du musst etwas anders mit Ihnen arbeiten. Lies Dir mal das hier durch: Es ist meiner Ansicht nach nicht ganz trivial von Arrays auf Collection-Typen umzusteigen. Aber versuche es erstmal selbst und frage dann nochmal nach, wenn Du nicht weiterkommst Da Du ja vorher PHP programmiert hast muss ich Dich enttäuschen. Etwas in der Art von Code: $_array = array();
$n = 5;
for( $i = 0; i < $n; $i++ )
{
$_array[] = $i;
// bzw. alternativ mit array_push()
}
Grüße Ben. |
| | |
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | Thema durchsuchen |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Zend Framework - Probleme mit Zend_Controller_RewriteRouter bzw. Form der URLs | Ben | PEAR, PECL und Frameworks | 12 | 24.12.2006 17:17 |
| Suche Hilfe: Angebot und Nachfrage berechnen | ljungi | Plauderecke | 6 | 17.12.2006 22:10 |
| Array in Bezug auf ein anderes sortieren... | code5 | PHP-Programmierung | 2 | 15.05.2006 15:56 |
| Ein Array in ein Array schreiben | bacarni | PHP-Programmierung | 2 | 07.02.2006 14:24 |