这是我的toString
方法。
public String toString() {
Life game = new Life(grid);
String word;
for (int row = 0; row < grid.length; row++) {
for (int col = 0; col < grid[0].length; col++) {
System.out.print("[" + grid[row][col] + "]");
}
System.out.println();
}
word = "";
return word;
}
我正在尝试获取(“[”网格[行][列]“])”
;放入我的字符串中。这是为了创建一个生命网格游戏,我不知道如何将数组放入字符串表示中。
如果所有的细胞都死了,它应该是什么样子的一些样本`
[0][0][0][0][0][0][0][0][0][0]
[0][0][0][0][0][0][0][0][0][0]
[0][0][0][0][0][0][0][0][0][0]
[0][0][0][0][0][0][0][0][0][0]
[0][0][0][0][0][0][0][0][0][0]
[0][0][0][0][0][0][0][0][0][0]
[0][0][0][0][0][0][0][0][0][0]
[0][0][0][0][0][0][0][0][0][0]
[0][0][0][0][0][0][0][0][0][0]
[0][0][0][0][0][0][0][0][0][0]
当我尝试word=word"["网格[行][] "]"; 我得到...
[0][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0]...
一切都在一条直线上。
考虑使用Java8的StringJoiner
:
public String toString() {
StringJoiner iJoiner = new StringJoiner(System.getProperty("line.separator"));
for (int i = 0 ; i < grid.length ; i++) {
StringJoiner jJoiner = new StringJoiner("][", "[", "]");
for (int j = 0 ; j < grid[i].length ; j++) {
jJoiner.add("" + grid[i][j]);
}
iJoiner.add(jJoiner.toString());
}
return iJoiner.toString();
}
StringJoiner
在元素之间(而不是之前或之后)放置分隔符,并可以选择添加前缀或后缀。
值得一看的是来源,因为它实现这一目标的优雅方式。
您还可以使用收集器以面向流的方式执行此操作。joining()
——这是一个简单的收集器
,围绕StringJoiner
实现:
return Arrays.stream(grid)
.map(row ->
Arrays.stream(row)
.mapToObj( x -> ""+x )
.collect(Collectors.joining("][", "[", "]"))
.collect(Collectors.joining(lineSeparator));
流
你在这里处理两个问题:
字符串中
——这可以通过StringBuilder
类和最终结果应如下:
StringBuilder res = new StringBuilder();
String newline = System.getProperty("line.separator");
for (int row = 0 ; row < grid.length ; row++) {
for (int col = 0 ; col < grid[row].length ; col++) {
res.append('[');
res.append(grid[row][col]);
res.append(']');
}
// Do not append the trailing newline
if (row != grid.length-1) {
res.append(newline);
}
}
return res.toString();
我正在使用Schembuf在带有套接字的计算机之间更改数据。要传输数据,我使用以下内容: 然而,我注意到Protobuf无法读取任何非int类型的接收数据(它将其分配给0)。果不其然,如果我不使用套接字,但试图用相同的代码片段返回消息,则会发生相同的情况: 我还指出: 那么,为什么我不能正确地将数据转换回字符串呢?如果这是一个参考问题,为什么protobuf不能读取字符数组数据或从字符数组转换的字
我正在尝试使用方法,但我认为我这样做是错误的: http://docs.oracle.com/javase/1.5.0/docs/api/java/util/arrays.html#toString(int[]) 我的代码: 字符串表示形式由方括号(“[]”)中包含的数组元素列表组成。相邻元素由字符“,”(逗号后跟空格)分隔。
我得到一个错误读数:
我有一个购物车php页面,在那里我显示客户端产品。在同一页中,我有一个表单,可以将客户的个人详细信息(如姓名、姓氏等)以及产品信息(如产品名称、数量等)直接发送到我的电子邮件地址。 现在,问题是,当我发送表单时,在我的电子邮件地址上,我收到了所有的信息,但没有产品细节,例如在订单电子邮件中的产品名称字段,我有ARRAY。 我看到将数组转换为字符串时出现问题,但我不知道如何转换,我尝试了几个示例,但
问题内容: 我知道如何以编程方式执行此操作,但是我敢肯定有一种内置方法… 我使用的每种语言都有一组对象的默认文本表示形式,当您尝试将Array与字符串连接起来或将其传递给print()函数时,它会吐出。Apple的Swift语言是否可以有一种轻松地将数组转换为字符串的内置方法,还是在对数组进行字符串化时始终必须明确? 问题答案: 如果数组包含字符串,则可以使用的方法: 在 Swift 2中 : 如
我使用过的每种语言都有某种默认的文本表示,用于对象集合,当您试图将数组与字符串连接起来,或者将其传递给print()函数等时,它会吐出这些对象集合。苹果的Swift语言是否有一种内置的方式可以轻松地将数组转换为字符串,或者我们在字符串化数组时总是必须显式地表示吗?