Nasıl Java bu MutliArray kurulum yapabilirim?

2 Cevap java

Ben bir PHP arka plan geliyor ve ben sadece bazı Java içine dişlerimi alıyorum. Ben "System.out.print()" yöntemi sadece her zamanki yoluyla bir terminale sonuçları yankılanan, sadece mümkün olduğunca Java aşağıdaki uygulamak nasıl merak ediyordum.

<?php
$Results[0]['title'] = "No Country for Old Men";
$Results[0]['run_time'] = "122 mins";
$Results[0]['cert'] = "15";
$Results[1]['title'] = "Old School";
$Results[1]['run_time'] = "88 mins";
$Results[1]['cert'] = "18";

// Will basically show the above in order.
foreach($Results as value) {
     echo $Results[$value]['title'];
     echo $Results[$value]['run_time'];
     echo $Results[$value]['cert'];
}

// Lets add some more as I need to do this in Java too

$Results[2]['title'] = "Saving Private Ryan";
$Results[2]['run_time'] = "153 mins";
$Results[2]['cert'] = "15";

// Lets remove the first one as an example of another need
$Results[0] = null;
?>

Ben "listesi Yineleyicilerde" veya bu gibi verileri üzerinden haddeleme için gerçekten çok iyi bir şey olduğunu duydum. Belki o ile uygulanabilir?

Bir tam çalışma .java dosyası yukarıdaki gibi diziden öğeler eklemek ve kaldırmak için nasıl dahil olmak üzere, bu durumda en kullanışlı olacaktır.

P.S. Umarım ben bu tür bir şey bir şey Java ile ilgili :) çalışır çok Android cezasıyla ilgili tüm iş, hayal gerektiğini, ancak uzak bir gelecekte bir Android App için bu kullanmayı planlıyorsanız, bu yüzden yok.

2 Cevap

Java yapıyor olsaydı ben aşağıdaki değişiklikleri yapmak istiyorsunuz:

  1. Bir film hakkında veri kapsüller bir Movie sınıf olun
  2. Kullan List yerli diziler yerine s

A Movie class şöyle görünebilir:

public class Movie {

    public final String title;
    public final int runtime;
    public final int cert;

    public Movie(String title, int runtime, int cert) {
        this.title = title;
        this.runtime = runtime;
        this,cert = cert;
    }
}

Sonra şöyle Filmler Listesinin yapabilir:

List<Movie> movies = new ArrayList<Movie>();
movies.add(new Movie("Some Movie", 120, 15);
movies.add(new Movie("Another Movie", 90, 18);

Öyle gibi Filmler kaldırabilirsiniz:

movies.remove(0);

Ve bunu gibi onlar üzerinden yineleme yapabilirsiniz:

for (Movie m: movies) {
    System.out.println("Title: " + m.title + 
                       ", Runtime: " + m.runtime + 
                       ", Cert: " + m.cert);
}

Eğer listesi dışında özel şeyler almak istiyorsan, aşağıdakileri yapabilirsiniz:

Movie the2ndOne = movies.get(1);
System.out.println("Title: " + the2ndOne.title); // or
System.out.println("Title: " + movies.get(0).title);

Bir tamamını görüntülemek için List basitçe yapın:

System.out.println(movies.toString());

Note: Bu Movie sınıf bir Intelegent bunun için yazılmış toString() yöntem olduğunu varsayar.

List s yukarıda gösterdi ki biraz daha fazla referans için, onlara javadocs check out.

Bir OO dilde yazarken, OO ilkeleri kullanmalısınız.

Ayrıca this soru ve buna cevabım okumak yararlı olabilir. Bu iki iki daha sınıflarını kullanarak hizmet olacağını Dizilerle şeyler yapmaya çalışıyoruz çok benzer.

Önce Veri Yapısı tanımlayan bir sınıf oluşturmak ve sonra ArrayList bu nesnenin aslında değerleri saklamak için inşa edebilirsiniz. ArrayList Java pek çok Collection biridir ve onlar üzerinde yineleme ve öğeler eklemek veya silmek için birçok yöntem sağlar.

Örneğin için: sınıf gibi görünebilir:

class Movie{

String title;
String run_time;
String cert;
...//getter,setter methods for these instance variables/fields
}

// you then create movie objects and populate some data in them
Movie one = new Movie();

one.setTitle("No Country for..");
one.setRunTime("122 mins");
one.setCert("15");

//create arrayList to store movie objects
ArrayList<Movie> list = new ArrayList<Movie>();

//add item to list
list.add(one);

// iterate over arrayList to get values
for(Movie item:list){
System.out.println(item.getTitle());
}

Referans: ArrayList