![]() |
|
|
|||||||
| Java Basics - Anfänger-Themen Fragen ausschließlich zu Java-Grundlagen von Ein- und Umsteigern |
|
|
|
Themen-Optionen | Thema durchsuchen | Ansicht |
| #1 (permalink) | |
|
Neuer Benutzer
Bit
Registriert seit: 31.05.2005
Fachbeiträge: 2
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
|
Hallo zusammen,
da meine Suche im Forum nicht so erfolgreich für mein Problem war, hoffe ich durch diesen Post weiter zu kommen. Ich möchte in einer Klasse einen Array füllen lassen. Den Inhalt dieses Array möchte ich dann in meine Main übergeben. Ich bin noch am Anfang meiner Java-Kenntnisse, daher könnte es bei meinem folgenden Code Schönheitsfehler geben. Hoffe es ist nicht alzu schlimm für die 'Profis' Code:
//Klasse Menge
package newFolder;
import java.util.*;
public class menge
{
int [] menge = new int [4];
int menge()
{
Random r = new Random();
boolean[] tun = new boolean[4];
for (int s = 0; s<4; s++)
{
boolean j = r.nextBoolean();
tun[s] = j;
if (j == true)
{
menge[s] = 1;
}
else
{
menge[s] = 0;
}
}
return menge; // Soll übergeben werden in die Main
}
}
// Main
package newFolder;
import java.math.*;
public class Main {
public Main() {
}
public static void main(String[] args) {
menge test = new Main();
System.out.println( test.menge() );
//Möchte hier z.B. die einzelnen Werte des Array ausgeben, hier liegt auch auch mein Problem
}
}
vielen Dank |
|
|
| #2 (permalink) | |
|
Stammbenutzer
Megabyte
Registriert seit: 05.01.2005
Fachbeiträge: 2.430
Abgegebene Danke: 0
Erhielt 1 Danke für 1 Beitrag
|
schreib dir doch ne get Methode:
Code:
public int[] getMenge() {
return menge;
}
__________________
"If you wait for a complete and perfect concept to germinate in your mind,you are likely to wait forever" DeMarco |
|
|
| #3 (permalink) | |
|
Stammbenutzer
CD-R 80
Registriert seit: 07.10.2003
Fachbeiträge: 9.041
Blog-Einträge: 7
Abgegebene Danke: 94
Erhielt 383 Danke für 296 Beiträge
|
Code:
menge test = new Main();
__________________
When I was young, I invented an invisible friend called Mr Ravioli. My psychiatrist says I don't need him anymore, so he just sits in the corner and reads |
|
|
| #4 (permalink) | |
|
Stammbenutzer
Megabyte
Registriert seit: 05.01.2005
Fachbeiträge: 2.430
Abgegebene Danke: 0
Erhielt 1 Danke für 1 Beitrag
|
Er will doch ein Objekt vom Typ "menge" erstellen, so dass er die Mengen-Methode aufrufen kann, also entsprechend anpassen...
trotzdem solltest du noch ne get methode schreiben
__________________
"If you wait for a complete and perfect concept to germinate in your mind,you are likely to wait forever" DeMarco |
|
|
| #5 (permalink) | ||||||||||||||||||
|
Stammbenutzer
Viertel Gigabyte
Registriert seit: 30.08.2004
Fachbeiträge: 3.490
Abgegebene Danke: 1
Erhielt 4 Danke für 4 Beiträge
|
__________________
|
|||||||||||||||||
|
|
||||||||||||||||||
| #6 (permalink) | |
|
Java-Forum Team
Site Operator
Registriert seit: 24.04.2004
Fachbeiträge: 11.951
Abgegebene Danke: 47
Erhielt 566 Danke für 529 Beiträge
|
Genau. Außerdem sollten Instanzvariablen immer private deklariert werden. Und wenn du ein Array zurückgeben willst, dann mach das doch einfach...
Dein Code könnte so aussehen: Code:
public class Main {
public static void main(String[] args) {
Menge m = new Menge();
int[] x = m.menge();
for(int i = 0; i < x.length; i++) {
System.out.println(x[i]);
}
}
}
Code:
import java.util.*;
public class Menge {
private int[] menge;
public Menge() {
menge = new int[4];
}
public int[] menge() {
Random r = new Random();
boolean[] tun = new boolean[4];
for (int s = 0; s<4; s++)
{
boolean j = r.nextBoolean();
tun[s] = j;
if (j == true)
{
menge[s] = 1;
}
else
{
menge[s] = 0;
}
}
return menge; // Soll übergeben werden in die Main
}
}
__________________
Schöne Grüße, L-ectron-X Programmieren lernt man nur durch programmieren. www.java-forum.org - Java programmieren aus Leidenschaft www.byte-welt.de - Die Welt des Programmierens "Wenn man die Buchstaben von Bundeskanzlerin umstellt, kommt Bankzinsenluder raus..." |
|
|
| #7 (permalink) | |
|
Stammbenutzer
CD-R 80
Registriert seit: 07.10.2003
Fachbeiträge: 9.041
Blog-Einträge: 7
Abgegebene Danke: 94
Erhielt 383 Danke für 296 Beiträge
|
und um den ternären Operator ins Spiel zu bringen
![]() Code:
public int[] menge() {
Random r = new Random();
boolean[] tun = new boolean[4];
for (int s = 0; s<4; s++)
{
boolean j = r.nextBoolean();
tun[s] = j;
menge[s] = j ? 1 : 0;
}
return menge; // Soll übergeben werden in die Main
}
desweiteren würde ich in der for schleife nicht s < 4 schreiben sondern s < menge.length. So kannst du die länge des arrays ändern ohne dir gedanken zu machen, dass die for schleife nicht mehr richtig ist
__________________
When I was young, I invented an invisible friend called Mr Ravioli. My psychiatrist says I don't need him anymore, so he just sits in the corner and reads |
|
|
|
| Themen-Optionen | Thema durchsuchen |
| Ansicht | |
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| int array übergeben | gast | Java Basics - Anfänger-Themen | 4 | 18.12.2006 13:20 |
| Array übergeben Fehlermeldung | eilmo | Java Basics - Anfänger-Themen | 3 | 09.11.2006 10:17 |
| Array übergeben | Gast | Java Basics - Anfänger-Themen | 1 | 26.09.2006 21:13 |
| Array an Methode übergeben / Array als Rückgabewert | halla | Java Basics - Anfänger-Themen | 2 | 10.04.2006 10:28 |
| Array übergeben | Java Basics - Anfänger-Themen | 2 | 01.12.2003 21:40 | |
| Lesezeichen |
|
|