scala提交1.通过concat()方法链接数组结果截图, 2操作数组查看第一个元素和判断数组是否包含“Scala”, 3定义两个变量都是“学习路漫漫” 4参考gzm2变量实现寝室号+个人姓名, 5定义数组一个寝室名为6人寝室,有6位成员名。 6按位取反一个小于7的数
时间: 2024-09-11 16:18:01 浏览: 47
在Scala中,你可以按照以下步骤操作:
1. **使用`concat()`方法连接数组**:
如果你有一个包含数组的数组,可以使用`Array.concat()`方法将它们连接起来。例如:
```scala
val arr1 = Array("元素1", "元素2")
val arr2 = Array("元素3", "元素4")
val result = arr1.concat(arr2)
println(result.mkString(",")) // 输出: 元素1, 元素2, 元素3, 元素4
```
2. **操作数组查看第一个元素和判断是否包含特定字符串**:
可以使用`head`方法获取数组的第一个元素,使用`contains`检查是否包含"Scala":
```scala
val arr = Array("Scala", "Java", "Python")
val firstElement = arr.head // 输出: Scala
val containsScala = "Scala" == arr.exists(_ == "Scala") // 输出: true
```
3. **定义变量并赋值**:
使用等号`= `给变量赋值,两次都设置为"学习路漫漫":
```scala
var gzm1 = "学习路漫漫"
var gzm2 = "学习路漫漫"
```
4. **创建寝室成员结构并组合**:
用`map`函数遍历数组,并将寝室号和姓名拼接:
```scala
val dormitory = Array("001", "002", "003", "004", "005", "006")
val names = List("张三", "李四", "王五", "赵六", "刘七", "陈八")
val gzm宿舍 = dormitory.zip(names).map { case (dorm, name) => s"$dorm - $name" }.mkString("\n")
```
5. **定义6人寝室成员列表**:
直接创建一个包含6个元素的数组即可:
```scala
val dormitory6People = Array("成员1", "成员2", "成员3", "成员4", "成员5", "成员6")
```
6. **按位取反一个小于7的数**:
Scala没有直接的按位取反操作,你需要先转换成整型再进行操作。假设有一个数字`num`小于7:
```scala
def bitFlip(num: Int): Int = num.toBinaryString.map(c => if (c == '1') '0' else '1').foldLeft(0)(BigInt(_, 2))
val smallNum = 5 // 举个例子
println(bitFlip(smallNum)) // 输出取反后的二进制数,如: 6
```
阅读全文