您的位置:

从string转localdate看Java编程的多样化

一、string转localdate类型

string转localdate类型是Java编程中较为基础的操作,我们可以通过LocalDate.parse()方法来实现转换。具体方式如下:

    String dateStr = "2022-01-01";
    LocalDate date = LocalDate.parse(dateStr);
    System.out.println(date);

代码执行结果为:

    2022-01-01

以上代码通过将字符串格式的日期转换为LocalDate类型,可以方便我们进行后续的日期计算和操作。

二、string转localdatetime类型

除了将字符串转换为日期类型外,我们还可以通过LocalDateTime.parse()方法将字符串转换为日期时间类型。具体方式如下:

    String datetimeStr = "2022-01-01T12:00:00";
    LocalDateTime datetime = LocalDateTime.parse(datetimeStr);
    System.out.println(datetime);

代码执行结果为:

    2022-01-01T12:00

在实际的编程过程中,我们常常需要将日期时间类型进行格式化输出。这时候我们可以使用DateTimeFormatter类来定义日期时间格式,并使用LocalDateTime.format()方法将日期时间类型格式化为字符串。以下是一个示例:

    String datetimeStr = "2022-01-01T12:00:00";
    LocalDateTime datetime = LocalDateTime.parse(datetimeStr);
    DateTimeFormatter format = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
    String formattedDatetime = datetime.format(format);
    System.out.println(formattedDatetime);

代码执行结果为:

    2022-01-01 12:00:00

三、string转localdatetime

除了直接将字符串转换为LocalDateTime类型外,我们还可以使用LocalDate和LocalTime分别将字符串转换为日期和时间,再将它们合并成LocalDateTime类型。以下是一个示例:

    String dateStr = "2022-01-01";
    String timeStr = "12:00:00";
    LocalDate date = LocalDate.parse(dateStr);
    LocalTime time = LocalTime.parse(timeStr);
    LocalDateTime datetime = LocalDateTime.of(date, time);
    System.out.println(datetime);

代码执行结果为:

    2022-01-01T12:00

四、string转int

除了日期时间类型外,我们还常常需要将字符串转换为整数类型。我们可以使用Integer.parseInt()方法将字符串转换为int类型。以下是一个示例:

    String intStr = "123";
    int num = Integer.parseInt(intStr);
    System.out.println(num);

代码执行结果为:

    123

五、string转double

除了整数类型外,我们还需要将字符串转换为浮点数类型。同样地,我们可以使用Double.parseDouble()方法将字符串转换为double类型。以下是一个示例:

    String doubleStr = "3.14";
    double num = Double.parseDouble(doubleStr);
    System.out.println(num);

代码执行结果为:

    3.14

六、string转为json

在Web开发中,我们常常需要将字符串转换为JSON格式,以便于前端页面进行处理。我们可以使用Jackson库的ObjectMapper类将普通的Java对象转换为JSON格式的字符串。以下是一个示例:

    ObjectMapper objectMapper = new ObjectMapper();
    User user = new User("Tom", 18);
    String userJson = objectMapper.writeValueAsString(user);
    System.out.println(userJson);

代码执行结果为:

    {"name":"Tom","age":18}

七、string转为list

在实际的编程中,我们经常需要将字符串转换为list集合。这时候我们可以使用StringTokenizer类将字符串按指定的分隔符分割成若干个元素,再将这些元素添加到list集合中。以下是一个示例:

    String str = "1,2,3,4,5";
    List list = new ArrayList<>();
    StringTokenizer tokenizer = new StringTokenizer(str, ",");
    while (tokenizer.hasMoreTokens()) {
        int num = Integer.parseInt(tokenizer.nextToken());
        list.add(num);
    }
    System.out.println(list);

  

代码执行结果为:

    [1, 2, 3, 4, 5]

八、string转streamc

对于较长的字符串,我们常常需要将它们分成若干等分,并对每一等分进行处理,例如使用每一等分生成一个二维码图片。这时候我们可以使用Stream API来对每一等分进行处理。以下是一个示例:

    String str = "abcdefghijklmnopqrstuvwxyz";
    int partitionSize = 5;
    List partitionStrList = new ArrayList<>();
    for (int i = 0; i < str.length(); i += partitionSize) {
        int endIndex = Math.min(i + partitionSize, str.length());
        String partitionStr = str.substring(i, endIndex);
        partitionStrList.add(partitionStr);
    }
    partitionStrList.stream().forEach(s -> {
        System.out.println("generate qrcode for: " + s);
    });

  

代码执行结果为:

    generate qrcode for: abcde
    generate qrcode for: fghij
    generate qrcode for: klmno
    generate qrcode for: pqrst
    generate qrcode for: uvwxy
    generate qrcode for: z

九、string转intc

最后我们来看一个较为复杂的实例。以下是一个将输入的字符串转换为8进制数字,并对其排序输出的代码示例:

    String inputStr = "12 34 56 78 90";
    String[] numStrArray = inputStr.split(" ");
    List numList = new ArrayList<>();
    for (String numStr : numStrArray) {
        int numDecimal = Integer.parseInt(numStr);
        int numOctal = Integer.parseInt(Integer.toString(numDecimal, 8));
        numList.add(numOctal);
    }
    Collections.sort(numList);
    System.out.println(numList);

  

代码执行结果为:

    [22, 34, 50, 116, 132]

通过以上的例子,我们可以发现Java编程的多样化,可以应用于各种场景。无论是日期时间类型转换、字符串分割处理、还是JSON格式转换等,我们都可以通过Java编程灵活地应对不同的任务和需求。