Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 3 của 3
  1. #1
    Thứ nhất: n là kiểu int mà ở dưới bạn lại ghi T [] a =new T[](null, n) ;. T[] là mảng object mà

    Thứ hai: Java không cho khai báo một Generic array vì lúc đó nó chưa biết kiểu dữ liệu là gì nên không thể tạo mảng được. Bạn chỉ tạo được array kiểu đó trong quá trình runtime thôi, vd:

    Mã:
    class Example<T> {
    	public T[] a;
    
    	public void createArray(T... data) {
    		this.a = data;
    	}
    
    	//test
    	public static void main(String[] args) {
    		Example<String> x = new Example<>();
    		x.createArray("hello", "world");
    		for (String s : x.a) {
    			System.out.println(s);
    		}
    	}
    }

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    generic 1 mảng trong java

    Em mới học về java, hiện đang code 1 bài hàng đợi cần khai báo 1 mảng kiểu T nhưng ko được. Ai hướng dẫn hộ em nhé, e cảm ơn rất nhiều.
    Code của e như sau: cái hàng màu đỏ ai sửa lại giúp e [IMG]images/smilies/dont_know.gif[/IMG]


    package queue;

    import java.lang.reflect.Array;


    public class Queue<T> {
    int first,last,n;

    T [] a =new T[](null, n) ;


    public void Queue( )

    {
    first=last=0;
    }
    public boolean isEmpty()
    {
    if((first==0)&&(last==0)) return true;
    if(first==last) return true;
    else return false;
    }
    public boolean isFull()
    {
    if((first==0)&&(last==n-1)) return true;
    else return false;
    }
    public void enQueue( T info)
    {
    a[last]= info;
    last++;
    if(last>=n) last =0;
    }
    public T deQueue( )
    {
    if(this.isEmpty()){
    return null;
    }
    T temp=a[this.first];
    first++;
    if (this.first>=n) first=0;
    return temp;
    }
    public void printAll()
    {
    if(isEmpty()){
    System.out.println("Null");
    return ;
    }
    for(int i=this.first;i<this.last;i++){
    System.out.println(a[i]+" ");
    }

    }
    public static void main(String[] args) {
    Queue<Long> f =new Queue<Long>();
    f.enQueue((long)380);
    f.printAll();
    }
    }

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    tks bạn nhé, mình hiểu rồi

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •