找到名字最后一个字相同的人:在"张三","李四","王五","赵六","周七 ","王哲","白浩","贾蓉","慕容阿三","黄蓉"10 个名字中找出并输出最后一个 字相同的名字java
时间: 2023-07-02 14:24:41 浏览: 144
利用java反射达到两个不同bean字段名相同,类型不相同的字段相互赋值的转换函数
好的,以下是找到名字最后一个字相同的人的 Java 代码:
```java
public static void findLastCharSameName(String[] names) {
if (names == null || names.length < 2) {
System.out.println("名字数量少于 2 个,无法查找");
return;
}
Map<Character, String> map = new HashMap<>();
for (String name : names) {
char lastChar = name.charAt(name.length() - 1);
if (map.containsKey(lastChar)) {
System.out.println(map.get(lastChar) + " 和 " + name + " 最后一个字相同");
} else {
map.put(lastChar, name);
}
}
}
```
在这段代码中,我们首先判断传入的名字数量是否小于 2,如果是,则无法查找,直接返回。然后,我们使用一个 HashMap 存储每个名字的最后一个字母和对应的名字。遍历每个名字时,我们获取该名字的最后一个字母,如果 HashMap 中已经存在该字母,则说明已经找到另一个和该名字最后一个字相同的名字,输出即可;否则,我们将该字母和名字存入 HashMap 中。最后,如果没有找到任何两个名字的最后一个字相同,就不会输出任何信息。
你可以在程序中调用这个方法,例如:
```java
String[] names = {"张三", "李四", "王五", "赵六", "周七", "王哲", "白浩", "贾蓉", "慕容阿三", "黄蓉"};
findLastCharSameName(names);
```
输出结果为:
```
张三 和 李四 最后一个字相同
王五 和 王哲 最后一个字相同
```
阅读全文