大家好,我在写一个"正方形生成器"的函数,它接收一个参数n为正方形边长的长度,返回String类型。 比如:n = 4,则输出应为:
++++
++++
++++
++++
以下是我的代码:
fn generate_square(n: i32) -> String {
"+".repeat((n * n) as usize) //got all "+"
.split(&*"+".repeat(n as usize)).collect::<Vec<&str>>() //got empty, why?
.join("\n").trim_end().to_string() // empty too
}
令我惊讶的是:String被.split()之后再collect的结果为空。这是为什么?
1
共 2 条评论, 1 页
评论区
写评论对以下内容的回复:
搞错了 是split去掉分隔符了,因为+号都是分隔符, 就成空了。
第一次split后就空了, 你可以拆出来单独split打印