Z 字形变换(String.join()方法拼接字符串)

class Solution {
public String convert(String s, int numRows) {
if(numRows == 1) return s;
List<StringBuffer> rows = new ArrayList<>();
for(int i = 0; i < Math.min(numRows, s.length()); i++){
rows.add(new StringBuffer());
}
int rowNum = 0;
boolean down = false;
for(char c : s.toCharArray()){
rows.get(rowNum).append(c);
if(rowNum == numRows - 1 || rowNum == 0) down = !down;
rowNum += down ? 1 : -1;
}
// StringBuffer res = new StringBuffer();
// for(int i = 0; i < rows.size(); i++){
// res.append(rows.get(i));
// }
// return res.toString();
// String.join()是静态方法,与String.split()作用相反
// String.join(分隔符, String数组/集合)
String res = String.join("", rows);
return res;
}
}
本文介绍了一种将字符串以Z字形方式排列并按行读取的方法。通过使用String.join()方法来简化字符串的拼接过程,实现了字符串的Z字形变换。此算法适用于多行显示或特定格式的数据处理。
723

被折叠的 条评论
为什么被折叠?



