什么是表<>在Java中(Android版)? [英] What is List<?> in Java (Android)?

查看:132
本文介绍了什么是表<>在Java中(Android版)?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述


  

可能重复:结果
  是什么类型<&型GT;叫什么名字?结果
  什么名单<>意味着Java泛型?


 包com.xyz.pckgeName;进口的java.util.ArrayList;
进口的java.util.List;公共类声明{//公共字符串
公共字符串状态;
公共字符串USER_ID;
公共字符串名称;
公共字符串available_balance;
公共字符串CURRENT_BALANCE;
公共字符串credit_card_type;
公共字符串bank_id;
公开名单<发言与GT;声明=新的ArrayList< Statement.Statements>();公共类声明{
    公共字符串月;
    公共字符串ACCOUNT_ID;
    公共字符串USER_ID;
    公共字符串ID;
    公开名单<&交易GT;交易=新的ArrayList<&交易GT;();
}
}

任何人能解释我是什么这两个语句的意思

 公开名单<发言与GT;声明=新的ArrayList< Statement.Statements>();公开名单<&交易GT;交易=新的ArrayList<&交易GT;();


解决方案

这是泛型在Java

列表<> 基本上转化为的未知列表的,即未知类型的列表。在 被称为一个通配符(这基本上是指的未知的)。


 公开名单<发言与GT;声明=新的ArrayList< Statement.Statements>();

这基本上是创建一个列表只接受 Statement.Statements 。要添加到语句 Statement.Statements 之外的任何将创建一个编译错误。这同样适用于公开名单<&交易GT;交易=新的ArrayList<&交易GT;(); 。这意味着列表 到类型 Statement.Statements (在语句变量)。

Possible Duplicate:
What is Type<Type> called?
What does List<?> mean in java generics?

package com.xyz.pckgeName;

import java.util.ArrayList;
import java.util.List;

public class Statement {

// public String
public String status;
public String user_id;
public String name;
public String available_balance;
public String current_balance;
public String credit_card_type;
public String bank_id;
public List<Statements> statements = new ArrayList<Statement.Statements>();

public class Statements {
    public String month;
    public String account_id;
    public String user_id;
    public String id;
    public List<Transaction> transactions = new ArrayList<Transaction>();
}
}

Can anyone explain me what these two statements mean

public List<Statements> statements = new ArrayList<Statement.Statements>();

public List<Transaction> transactions = new ArrayList<Transaction>();

解决方案

This is Generics in java

List<?> is essentially translated as a "List of unknowns", i.e., a list of unknown types. The ? is known as a Wildcard (which essentially means unknown).


public List<Statements> statements = new ArrayList<Statement.Statements>();

This essentially creates a List that only accepts Statement.Statements. Anything outside of Statement.Statements that you want to add to statements will create a compilation error. The same applies to public List<Transaction> transactions = new ArrayList<Transaction>();. This means that the List is bounded to a type Statement.Statements (on statements variable).

这篇关于什么是表&LT;&GT;在Java中(Android版)?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆