簡體   English   中英

為什么不能聲明字符的ArrayList

[英]Why can't I declare an ArrayList of characters

為什么我不能聲明char的ArrayList,我知道String類存在,但仍然看起來很奇怪,我無法執行以下代碼

ArrayList<char> foo = new ArrayList<char>();

您不能將基本類型用作通用類型參數; 您需要使用char的包裝類,即Character

List<Character> characterList = new ArrayList<>(); //Java 7

要么

List<Character> characterList = new ArrayList<Character>(); //Java 5,6

這適用於任何接受通用類型參數的類。 因此,例如,如果您嘗試使用int ,則將得到相同的錯誤。 相反,您將不得不使用Integer

Character不是char

List<Character> foo = new ArrayList<Character>();

從首字母可以很容易地看出char不是類

集合不允許使用基本類型。 如果您嘗試了任何原語(int,long,double等),就會遇到此錯誤。 使用原始包裝器(例如Character)聲明集合。

ArrayList<Character> foo = new ArrayList<Character>();

嘗試Character

ArrayList<Character> characterList = new ArrayList<Character>();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM