- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
phân phát Danh sách<đối tượng="">đối>
đến List super String>
工作正常。
phân phát List<>
đến List
不编译。>
Mã số
public class Main {
public static void main(String[] args) {
// works fine
List
câu hỏi
为什么不 List
工作方式与 >
List super String>
相同?
另外,知道在哪里可以查找此类内容吗?
一个相关的问题是Generics hell: hamcrest matcher as a method parameter .但我觉得那里的答案没有帮助。
biên tập
我必须仔细考虑JB Nizet's answer在我终于得到它之前几个小时。所以我会在这里稍微扩展一下。也许这会对其他人有所帮助。
假设分配一个 List<>
đến List
是可能的,下面的代码将编译:>
// can only contain instances of CharSequence
List<>> listOfListOfCharSequences = new ArrayList<>();
List> listOfListSuperString = listOfListOfCharSequences;
// add a list of objects containing an Integer
List
所以为了防止在运行时出现丑陋的异常,这是不允许的。
BẰNGhalex points out这是泛型协方差,与 List
相同不可分配给 Danh sách<đối tượng="">đối>
.并使用 List extends List super String>>
代码实际上会编译,因为 ? extends String
防止 List.add()
打电话。
1 Câu trả lời
bởi vì Danh sách<đối tượng="">đối>
Và List super String>
不同. List super String>
持有一种您不知道的特定类型的对象,但它是 String 或 String 的父类(super class)或超接口(interface)。而 Danh sách<đối tượng="">đối>
是一个可以容纳任何类型对象的列表。
假设 ? super String
ĐúngCharSequence
.您会发现以下编译正常吗?
List<>
关于java - 列表<列表 super="" string=""> 没有按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13289847/
列表>
Như tiêu đề gợi ý, ans_list là danh sách các câu trả lời và ans_index là một con số (chỉ mục của câu trả lời trong từ vựng, nhưng hiện tại điều đó không liên quan). Tree.anslist được tạo ra ở đây là gì? (ví dụ chỉ dành cho lần đầu tiên), bỏ qua các lần lặp lại. nếu
Hiện tại tôi lưu trữ dữ liệu đầu vào của người dùng trong danh sách phân tách bằng dấu phẩy như thế này: Userid | Tùy chọn 1 | 1,2,5 Người dùng đánh dấu một tập hợp các tùy chọn dưới dạng mảng rồi nối chúng bằng dấu phẩy 1,2,5 rồi đến MySQ
Hiện tại tôi lưu trữ dữ liệu đầu vào của người dùng trong danh sách phân tách bằng dấu phẩy như thế này: Userid | Tùy chọn 1 | 1,2,5 Người dùng đánh dấu một tập hợp các tùy chọn dưới dạng mảng rồi nối chúng bằng dấu phẩy 1,2,5 rồi đến MySQ
Tôi muốn biết cách làm phẳng hoàn toàn các danh sách và những thứ chứa trong đó. Trong số những giải pháp khác, tôi đã nghĩ ra một giải pháp là có thể trượt một vật có nhiều thành phần và đặt chúng lại, hoặc lấy đi một vật có một thành phần sau khi trượt. Điều này tương tự như Làm thế nào để tôi “làm phẳng
Tôi muốn biết cách làm phẳng hoàn toàn các danh sách và những thứ chứa trong đó. Trong số những giải pháp khác, tôi đã nghĩ ra một giải pháp có thể trượt một vật có nhiều thành phần và đặt chúng lại, hoặc lấy đi một vật có một thành phần sau khi trượt ra. Điều này tương tự như Làm thế nào để tôi “làm phẳng
Câu hỏi này đã có câu trả lời: Chuyển đổi danh sách lồng nhau thành mảng 2 chiều (3 câu trả lời) Đã đóng 7 năm trước. Có phím tắt nào để chuyển đổi List
Tôi gặp vấn đề khi sắp xếp một Danh sách>. Tôi đã tạo một trình so sánh tùy chỉnh trong đó tôi viết mã để sắp xếp dữ liệu. lớp công khai CustomComparator triển khai Comparator
Câu hỏi này đã có câu trả lời: Đã đóng cách đây 10 năm. Có thể trùng lặp: Java Generics: Không thể chuyển đổi List thành List? Tôi chỉ muốn biết tại sao mã java sau đây
Đã cố gắng tìm ra cách LINQy để thực hiện việc này nhưng không tìm ra được cách nào. Tôi có một đối tượng List<> chứa một thuộc tính là danh sách các mã chữ cái được phân tách bằng dấu phẩy: lst[0].codes = "AA,BB,DD" lst[1
Giả sử tôi có các phép gán sau: points = [] point = (1, 2) Tôi sẽ làm thế nào: points += point Nó hoạt động tốt và cho tôi points = [1, 2]. Nhưng nếu tôi làm thế này: điểm
Cách chuyển đổi kiểu List[Task[List[Header]]] thành Task[List[Header]] trong scala. Tôi có một phương thức trả về Task[List[Header]] và gọi do nhiều lần
Làm thế nào để tìm các phần tử của danh sách 2D trong Java? Tôi có một hàm lấy List
Gán List này cho List kia hoạt động tốt. Việc gán List> cho List> không biên dịch được. Mã lớp công khai Main { public static void main(String[] a
Tôi đang viết một phương thức trong Java phải nhận và lặp lại một Danh sách Serializable. Sự khác biệt giữa: public void myMethod(List list) { } và public là gì?
Tôi thấy nhiều người muốn cập nhật một phần lưới/danh sách/cây bằng mvvm, nhưng họ không muốn làm mới toàn bộ danh sách. Đối với bất kỳ ai gặp phải vấn đề này, tôi đã đưa ra ví dụ sau. Hy vọng thông tin này hữu ích với bạn. Câu trả lời hay nhất Đây là một ví dụ đơn giản. Điều quan trọng nhất trong toàn bộ mã là:
Tôi đang viết một trình bao bọc cho một thư viện C++ hiện có sử dụng danh sách, trong đó T là một cấu trúc tùy chỉnh. Tôi được gợi ý sử dụng vector thay vì danh sách, nhưng tôi đang cố gắng tránh việc sửa đổi thư viện. Để hiểu rõ hơn về tình huống này, tôi đã tạo một ứng dụng đơn giản sử dụng danh sách
Có sự khác biệt nào giữa hai khai báo này không? Cảm ơn, câu trả lời tốt nhất là có. Danh sách có thể chứa hỗn hợp các thứ khác nhau đều bắt nguồn từ Base. Danh sách chứa các mục đồng nhất (theo nghĩa là tất cả chúng phải
Có ai có thể giải thích sự khác biệt giữa các loại sau đây một cách chi tiết nhất có thể không? Danh sách Danh sách Danh sách Để tôi nói cụ thể hơn nhé. Khi nào tôi muốn sử dụng // 1 public void CanYouGiveMeAnAnswer(List l
Tôi có một danh sách các cặp, mỗi cặp là một cặp danh sách. Vì vậy, dữ liệu của tôi trông như thế này: mylist = [(['foo', 'bar'], ['bar', 'bar']),(['bar', 'bar'],['bar', '
Có thể là một tiêu đề kỳ quặc, nhưng tôi gặp vấn đề sau: với một danh sách kiểu (a * b) list, tôi muốn tạo một danh sách mới kiểu (a * b list) list. Một ví dụ: Cho một danh sách hãy testL
Tôi là một lập trình viên xuất sắc, rất giỏi!