JavaRush /Java Blog /Random-TL /Generics sa Java (practice)

Generics sa Java (practice)

Nai-publish sa grupo
Lumikha ng isang klase na may listahan ng mga bagay na may di-makatwirang kalikasan (anumang klase). Kasama sa klase ang isang pamamaraan na tinatawag PrintListna may parameter na boolean. Ang pamamaraan ay nagpapakita ng kakaiba o pantay na mga elemento ng listahan sa console, depende sa halaga ng parameter (true o false).
  1. Pagbuo ng generic na klase
  2. Magdeklara ng ArrayList na may parametric na uri (lumikha ng listahan)
  3. Lumikha ng isang paraan na pumupuno sa listahan ng data
  4. Lumikha ng isang paraan na nagpi-print ng alinman sa pantay o kakaibang mga halaga
public class PrintList<T> {
	private ArrayList<T> list = null;

	public PrintList() {
		list = new ArrayList<T>();
	}

	public void add(T data) {
	list.add(data);
	}
public void printList(boolean isOdd) {
		int size = list.size();
	if (isOdd) {
		for (int i = 1; i < size; i += 2) {
			System.out.println(list.get(i).toString());
		}
	} else{
		for (int i = 0; i < size; i += 2) {
			System.out.println(list.get(i).toString());
	}}}

}
Gumagawa ako ng object ng class PrintList, ngunit may kongkretong klase Stringsa halip na parametric type. Pinupunan ko ang listahan. Ito ay bubuuin ng 10 linya. At ngayon kung plS.printList(true), pagkatapos ay kahit na mga linya ay ipapakita. At kung plS.printList(false), pagkatapos ay kakaiba.
public static void main(String[] args) {
	PrintList<String> plS = new PrintList<String>();
	for (int i = 0; i < 10; i++){
		plS.add("" + i);
	}
	plS.printList(true);
Pagkatapos ay lumikha ako ng isang bagay ng klase PrintListsa halip Stringna ito ay ginagamit Integerat ang mga kakaibang halaga ay output.
PrintList<Integer> plI = new PrintList<Integer>();
	for (int i = 0; i < 10; i++){
		plI.add(i);
	}
	plI.printList(false);
}
Mga komento
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION