Java学习第三十二天

一、今天干了什么

做PTA基础编程题目集,争取所有编程题使用Java进行解决

二、遇到的问题

1.数据的输入问题:

学习了一位博主的文章,他写得非常详细,附一下链接:https://blog.csdn.net/qq_41181772/article/details/83653875。

输入之前一定要记得Scanner包!

import java.util.Scanner;
public class Main
{
    public static void main(String[] args)
    {
        Scanner sc = new Scanner(System.in);
        int num = sc.nextInt();        //输入整形
        String name = sc.nextLine();//输入字符类型(String类型)
        String s = sc.nextLine();       //输入带空格或tab的字符串
        float f = sc.nextFloat();        //输入浮点数
        //输入什么类型就带nextXX();
    }
    
}    

2.PTA7-7  12-24小时制问题

在做的时候,尝试着用1中的方式去输入“:”,但是后来发现这种读取方法并不合适,在题目中无法解决问题,去网上寻扎解决方法,看到了大佬的回答

大佬原文链接:https://blog.csdn.net/qq_41690324/article/details/80789071

我借鉴之后的代码:

标红的这三行,帮助我解决了这个问题,直接用sc.next()输入当前的时间,再用split()去分割字符串,最后使用包装类中国的ValueOf()给hour和minute赋值,妙啊,学到了个小妙招

另外后边时间判断部分的代码过于冗杂,需要进一步地强化学习

import java.util.Scanner;
public class Main
{
    public static void main(String[] args)
    {
    Scanner sc = new Scanner(System.in);
    String timeNow = sc.next();
    String time[] = timeNow.split(":");// split() 方法用于把一个字符串分割成字符串数组。
    int hour = Integer.valueOf(time[0]);
    int minute = Integer.valueOf(time[1]);
        
    if(hour >= 0 && hour < 12)
    {
        hour = hour;
        System.out.print(hour + ":" + minute + " AM");
    }
    else if(hour > 12 && hour < 24)
    {
        hour -= 12;
        System.out.print(hour + ":" + minute + " PM");
    }
    else if(hour == 12)
    {
        System.out.print(hour + ":" + minute + " PM");
    }
    else if(hour == 24)
    {
        hour = 0;
        System.out.print(hour + ":" + minute + " AM");
    }
    }
}

三、明天干什么

继续用Java做PTA,一边做一边发现问题、解决问题,巩固落实

 

posted @ 2021-08-13 22:23  闫闫不是那个严  阅读(22)  评论(0编辑  收藏  举报