我有一个字符串的字符串是类似这样的
232302001A7102186410045298B9A000A00000E100010160120903130108920050433630315F433133302E3030342E3132372E30315F54312E312E3000000064666266356135326137613464633039633430650000000000000000000000000000000000000000000001005D28
内容;现在我想将它转化为23,23,02,00, 1A
等这样的形式,但是不知道怎么做,想了半天没一点想法,>求大神指点一下***
答案 0 :(得分:0)
这就是你可以做的。
val str = "232302001A710218641004529" +
"8B9A000A00000E100010160120903130108920050433630315F433133302E3030342E31" +
"32372E30315F54312E312E300000006466626635613532613761346463303963343065" +
"0000000000000000000000000000000000000000000001005D28"
val ans = str.sliding(2,2).toList
println(ans)
//List(23, 23, 02, 00, 1A, 71, 02, 18, 64, 10, 04, 52, 98, B9, A0, 00, A0, 00, 00, E1, 00, 01, 01, 60, 12, 09, 03, 13, 01, 08, 92, 00, 50, 43, 36, 30, 31, 5F, 43, 31, 33, 30, 2E, 30, 30, 34, 2E, 31, 32, 37, 2E, 30, 31, 5F, 54, 31, 2E, 31, 2E, 30, 00, 00, 00, 64, 66, 62, 66, 35, 61, 35, 32, 61, 37, 61, 34, 64, 63, 30, 39, 63, 34, 30, 65, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 01, 00, 5D, 28)
或者您可以使用分组,因为m,n的值等于我们应该使用分组的值。像这样
str.grouped(2)
答案 1 :(得分:0)
可以使用.grouped
方法将其存档,如下所示:
val string = "232302001A710218641004529"
val res = string.grouped(2).toList
// res: List[String] = List("23", "23", "02", "00", "1A", ...)
我认为它比带有两个参数的.sliding
更清楚。