用java编程实现,现有一个保存学生姓名(小明,小芳,李四)的数组,使用Arrays类方法实现以下功能,查找该数组中是否有小芳,如果有,则修改为晓芳。
时间: 2023-11-04 16:05:42 浏览: 35
好的,可以使用Arrays类的`binarySearch()`方法和`copyOf()`方法来实现该功能。具体代码如下:
```
import java.util.Arrays;
public class ModifyStudentName {
public static void main(String[] args) {
String[] studentArray = {"小明", "小芳", "李四"};
int index = Arrays.binarySearch(studentArray, "小芳");
if (index >= 0) {
studentArray[index] = "晓芳";
studentArray = Arrays.copyOf(studentArray, studentArray.length);
System.out.println("修改后的学生姓名数组为:" + Arrays.toString(studentArray));
} else {
System.out.println("该数组中没有小芳。");
}
}
}
```
运行结果如下:
```
修改后的学生姓名数组为:[小明, 晓芳, 李四]
```
代码解析:
1. 定义一个保存学生姓名的字符串数组`studentArray`,并初始化为{"小明", "小芳", "李四"}。
2. 使用`binarySearch()`方法查找字符串"小芳"在数组中的索引位置,如果存在则返回索引值,不存在则返回负数。
3. 判断索引值是否大于等于0,如果是,则说明找到了"小芳",使用索引值修改该元素为"晓芳"。
4. 使用`copyOf()`方法将修改后的数组复制一份,长度与原数组相同,避免修改原数组。
5. 输出修改后的学生姓名数组。如果找不到"小芳",则输出"该数组中没有小芳。"。