我正在尝试使用android studio创建一个android应用,并且我希望能够将用户输入的数据上传到Google表格。
我查看了Google Sheets API,我相信我已经正确设置了所有必要的依赖项。我遇到的问题是使用内置方法setValues()将数据添加到数据类型ValueRange中。
文档说ValueRange对setValues具有以下方法
public ValueRange setValues(java.util.List<java.util.List<java.lang.Object>>
values)
并且Google Sheets API文档提供了以下示例,说明如何使用setValues()方法
List<List<Object>> values = Arrays.asList(
Arrays.asList(
// Cell values ...
)
// Additional rows ...
);
ValueRange body = new ValueRange()
.setValues(values);
当我尝试添加自己的数据时,出现以下错误。
List<List<Object>> values = Arrays.asList(Arrays.asList("hello world"));
Incompatible types.
Required: List<java.util.List<java.lang.Object>>
Found: List<java.util.List<java.lang.String>
所以我的问题是如何添加数据以键入List<List<Object>>
?
答案 0 :(得分:3)
将字符串投射到对象:
Arrays.asList(Arrays.asList((Object) "Hello World"))
或添加类型见证人:
Arrays.asList(Arrays.<Object>asList("Hello world"))
答案 1 :(得分:1)
必需的是对象的ArrayList,但找到字符串的ArrayList。试试下面的代码
List<Object> objects = Arrays.asList("Hello world");
List<List<Object>> values = new ArrayList<>();
values.add(objects);
setValues(values);
答案 2 :(得分:0)
尝试一下:
List<List<Object>> values = Arrays.asList(Arrays.asList(new Object[]{"hello world"}));