Имеется следующий код
public static void main(String[] args) {
String[] names=new String[]{
"Иванов","Иванова","Гороховская","Гороховской",
"Глушницкий","Глушницкая","Борисова","Борисов"
};
TreeMap<String,TreeList> paraFam=new TreeMap<>();
for (String name:names)
{
if (!paraFam.containsKey(name))
{
TreeList family=new TreeList();
family.add(name);
paraFam.put(name,family);
}
else {
TreeList family=paraFam.get(name);
family.add(name);
paraFam.put(name,family);
}
}
for(Map.Entry entry:paraFam.entrySet())
{
TreeList<String> family= (TreeList) entry.getValue();
System.out.println("Фамилия---"+entry.getKey()+"------");
for (String name:family)
{
System.out.println(name);
}
}
}
Подскажите пожалуйста, как можно изменить код для того, что бы одинаковые фамилии, независимо от пола помещались в одинаковый список, но при этом не изменялись.
Я решил путем создания статического метода приведения фамилий к женским
public class WordWorker {
public static void main(String[] args) {
String[] names=new String[]{
"Иванов","Иванова","Гороховская","Гороховской",
"Глушницкий","Глушницкая","Борисова","Борисов"
};
TreeMap<String,TreeList> paraFam=new TreeMap<>();
for (String name:names)
{
if (!paraFam.containsKey(manforwomew(name)))
{
TreeList family=new TreeList();
family.add(name);
paraFam.put(manforwomew(name),family);
}
else {
TreeList family=paraFam.get(manforwomew(name));
family.add(name);
paraFam.put(manforwomew(name),family);
}
}
for(Map.Entry entry:paraFam.entrySet())
{
TreeList<String> family= (TreeList) entry.getValue();
System.out.println("Фамилия---"+entry.getKey()+"------");
for (String name:family)
{
System.out.println(name);
}
}
}
private static String manforwomew(String family)
{
String result;
String okonch = family.substring(family.length()-2);
if(okonch.equals("ов")||okonch.equals("ев")||okonch.equals("ёв")||
okonch.equals("ин"))
{
result=family+"а";
}
else if(okonch.equals("ой")||okonch.equals("ий")||okonch.equals("ый"))
{
result=family.substring(0,family.length()-2)+"ая";
}
else result=family;
return result;
}
}
Однако, думаю это не самое красивое решение.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Не приходят push уведомленияПри отсылке сервер гугла возвращает {"multicast_id":410383576077558298,"success":1,"failure":0,"canonical_ids":0,"results":[{"message_id":"0:1576316927466102%b078b91ff9fd7ecd"}]}...
По значению дает набор цифр :
Необходимо реализовать управление спящим режимом пк на c++, у меня вообще нет идей как это реализовать(я только начал изучение с++)