按年龄段打印年龄代码Java

根据输入的年龄, 来打印出当前年龄的人是少年(低于18), 青年(19-28), 中年(29-55), 老年(56以上)

import java.util.Scanner;

public class 作业3_1 {//少年(低于18), 青年(19-28), 中年(29-55), 老年(56以上)
    public static void main(String[] args) {
        Scanner sca=new Scanner(System.in);
        int age=sca.nextInt();
        System.out.printf("%d 岁是%s",age,判断年龄(age));
    }

    private static String  判断年龄(int age) {
        if(age<0){
            return "年龄错误";
        }else if(age<=18){
            return "少年";
        }else if(age<=28){
            return "青年";
        }else if(age<=55){
            return "中年";
        }else{
            return "老年";
        }
    }
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Java中,您可以使用`Comparator`和`Collectors.groupingBy()`来对列表进行按姓名分组,然后再按年龄排序。以下是实现该功能的示例代码: ```java import java.util.ArrayList; import java.util.Comparator; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.stream.Collectors; public class GroupAndSort { public static void main(String[] args) { // 假设每个元素是一个Person对象,包含姓名和年龄属性 List<Person> persons = new ArrayList<>(); persons.add(new Person("Alice", 25)); persons.add(new Person("Bob", 30)); persons.add(new Person("Alice", 20)); persons.add(new Person("Charlie", 35)); persons.add(new Person("Bob", 28)); // 按姓名分组 Map<String, List<Person>> groupedData = persons.stream() .collect(Collectors.groupingBy(Person::getName)); // 对每个分组按年龄排序 groupedData.values().forEach(group -> group.sort(Comparator.comparingInt(Person::getAge))); // 打印排序后的结果 for (List<Person> group : groupedData.values()) { for (Person person : group) { System.out.println(person); } } } static class Person { private String name; private int age; public Person(String name, int age) { this.name = name; this.age = age; } public String getName() { return name; } public int getAge() { return age; } @Override public String toString() { return "Person{name='" + name + "', age=" + age + "}"; } } } ``` 这段代码将列表中的元素按姓名分组,并对每个分组按年龄进行排序。您可以根据自己的需求修改代码中的数据结构和排序规则。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值