Des tableaux avec différents types de données c'est à dire les chaînes et les nombres entiers. (Objectorientend)
Par exemple j'ai
3 livres:
Booknumber (int), Booktitle (string), Booklanguage (string), Bookprice (int).
maintenant, je veux avoir un tableau appelé books[3][4]
.
Je suis gettin les données que j'ai réglé via le setBooknumber comme ceci:
Book1.getBooknumber(), Book1.getBooktitle(),...,Book3.getBookprice().
Maintenant, comment puis-je réaliser cette books[3][4] array
. Je ne peux pas appeler ça String books[][] = new String [3][4]
. Parce que je ne peux pas obtenir Booknumber (int)
.
Je ne veux pas Booknumber à la Chaîne ni Bookprice. Comment puis-je m'en rends compte, s'il vous plaît?
Maintenant à développer.
J'ai 2 classes.
public class book{
String Booktitle, Booklanguage;
int Booknumber, Bookprice;
//constructor
//get
//set
}
et
public class bookUI
{
public static void main(String arg[])
{
book book1 = new book();
book book2 = new book();
book book3 = new book();
book1.setBooktitle();
...
book3.setBookprice();
//Here I want to have books[3][4] Array. And gettin the data via book1.get...book3.get into the array
}
}
les gens continuent d'utiliser des tableaux?!
Pourquoi doit-elle être un tableau de tableaux?
Parce que c'est ce que je suis en train d'essayer de se mettre au travail. N'a pas d'importance comment laide, il est ou comment stupide. C'est mon but et je veux le faire alors je peux comprendre pourquoi il n'a pas de travail, comment il fonctionne, et plus TARD SUR la façon de faire différente.
OK, alors la solution est simple: Il n'y a aucun moyen d'accéder à des propriétés de la classe dans ce
-1: Si vous n'êtes pas prêts à accepter que certaines choses ne sont pas possible que personne ne peut vous aider. C'est comme si tu nous a donné de l'eau et nous a demandé de faire cuire des pâtes sans les pâtes et un pot (et en heure pour le dîner).
Pourquoi doit-elle être un tableau de tableaux?
Parce que c'est ce que je suis en train d'essayer de se mettre au travail. N'a pas d'importance comment laide, il est ou comment stupide. C'est mon but et je veux le faire alors je peux comprendre pourquoi il n'a pas de travail, comment il fonctionne, et plus TARD SUR la façon de faire différente.
OK, alors la solution est simple: Il n'y a aucun moyen d'accéder à des propriétés de la classe dans ce
array[0]
style. (corrigez-moi si je me trompe). Les tableaux sont également tapé, donc la seule solution est de créer un tableau de tableaux de Objects
qui est mauvais que vous devez savoir de quel type d'objet vous êtes vraiment affaire avec (String ou Integer). La programmation orientée objet est là pour rendre la vie plus facile pour vous de simplement l'accepter.-1: Si vous n'êtes pas prêts à accepter que certaines choses ne sont pas possible que personne ne peut vous aider. C'est comme si tu nous a donné de l'eau et nous a demandé de faire cuire des pâtes sans les pâtes et un pot (et en heure pour le dîner).
OriginalL'auteur Grumpy ol' Bear | 2010-01-06
Vous devez vous connecter pour publier un commentaire.
ensuite déclarer votre groupe:
EDIT:
En réponse à O. P. de la confusion, le Livre doit être un objet, pas un tableau. Chaque livre doit être créé (par l'intermédiaire d'un bien conçu constructeur) et ensuite ajouté à la matrice. En fait, je ne voudrais pas utiliser un tableau, mais une liste de tableaux. En d'autres termes, vous êtes en essayant de forcer les données dans des contenants qui ne sont pas appropriés pour la tâche à portée de main.
Je crois que 50% de la programmation est de choisir la bonne structure de données pour vos données. Les algorithmes naturellement suivre si il y a un bon choix de structure.
Lorsqu'il est fait correctement, vous obtenez votre classe UI ressemble à:
Edit: les Génériques ajouté à l'extrait de code suivant.
etc.
maintenant, vous pouvez utiliser les Collections de l'interface et de faire quelque chose comme:
Je ne comprends pas. Pouvez-vous expliquer davantage?
Il le dit d'un livre ne doit pas être un tableau. C'est un type de regroupement, et doit être représenté par une classe.
"Chaque livre doit être créé (par l'intermédiaire d'un bien conçu constructeur) et ensuite ajouté à la matrice." C'EST CE QUE JE VEUX ;). Excatly ce que je veux. Je veux créer 3 objets (3 livres), définissez toutes les données, et de le donner à un tableau. Ensuite, je tiens à appeler via livre[0][0] le booknumber par exemple.
Je ne comprends pas pourquoi vous insistez sur
book[0][0]
que beaucoup. Ce n'est pas comment cela fonctionne en Java. Si vous voulez le faire comme cela, vous avez à choisir, par exemple, PHP.OriginalL'auteur Chris Cudmore
Remarquez la répétition de
Book
dansBooknumber (int), Booktitle (string), Booklanguage (string), Bookprice (int)
- il hurle pour un type de classe.Maintenant, vous pouvez tout simplement:
Si vous voulez des tableaux, vous pouvez la déclarer comme un tableau d'objets d'un insert
Integer
etString
:Quoi? (15 char limite)
Maintenant qu'il a été édité, mon commentaire est un peu débile. +1 pour le modifier au sujet de la répétition du "livre" dans les noms de champ. C'est une odeur qui ne fait crier de refactoring.
OriginalL'auteur Chandra Patni
@NoCanDo: Vous ne pouvez pas créer un tableau avec des types de données différents, parce que java prend en charge les variables avec un type de données spécifique ou d'un objet. Lorsque vous créez un tableau, vous êtes en tirant ensemble un assortiment de semblable variables-presque comme une étendue variable. Toutes les variables doivent être du même type donc. Java ne permettent pas de différencier le type de données de votre variable, sauf si vous lui dites ce qu'il est. Ex:
int
raconte toutes vos variables déclarées sont de type de donnéesint
. Ce que vous pourriez faire est de créer 3 tableaux avec les informations correspondantes.int bookNumber[] = {1, 2, 3, 4, 5};
int bookName[] = {nameOfBook1, nameOfBook2, nameOfBook3, nameOfBook4, nameOfBook5}
//etc.. etc..
Maintenant, un seul numéro d'index vous donne toutes les infos pour ce livre. Ex: l'Ensemble de vos tableaux avec le numéro d'index 0 ([0]) avoir des informations pour le livre 1.
OriginalL'auteur CCA
d'utiliser des objets de type
ie Objet des livres[3][4];
OriginalL'auteur GuruKulki
Pourquoi ne pas créer une classe Livre avec des propriétés: le Numéro, le Titre et le Prix. Puis les stocker dans une unique matrice dimensionnelle? De cette façon, au lieu de l'appeler
..pour obtenir vos livres par titre,
Me semble que ce serait un peu plus facile à gérer et code amicale.
Pourquoi est-ce un problème de faire de cette façon? En plus d'être probablement la seule façon dont le code est plus facile à comprendre.
Becaus je ne veux pas et ce n'est pas ce que j'essaie de comprendre. Je suis d'auto-apprentissage de Java. Il ne m'aide pas quand les gens sont trowing hunderds de différentes codesolutions. Je veux rester dans MON "codeframe", donc je peux le comprendre et ENSUITE passer à quelque chose de différent.
Si vous êtes auto-apprentissage, alors vous devriez écouter les gens qui savent ce qu'ils font quand ils vous disent que vous allez à propos de quelque chose dans le mauvais sens. Et les gens ne sont pas à jeter des centaines de différentes solutions à vous — ils sont ce qui suggère la même chose, qui est de faire un Livre de classe.
Oui, bien que peut-être. Mais c'est souvent comme cette analogie: l'un est l'apprentissage de base en géométrie et les gens commencent à bombarder lui/elle avec l'avancée du calcul différentiel. Alors qu'il/elle n'a aucune idée du calcul différentiel. Pas dans ce cas ici, mais assez souvent le cas sur stackoverflow. Je veux dire toutes les solutions de travail si je les mettre en œuvre, mais ceux qui n'étaient pas ce que je cherchais. Si cela ne fonctionne pas, alors il ne fonctionne pas. Je l'apprécierais si les gens pouvaient expliquer à un débutant POURQUOI et COMMENT il n'a pas de travail, et non pas immédiatement commencer à jeter les autres, tout à fait mieux, des solutions. Il n'aide pas du tout.
OriginalL'auteur George Johnston