IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> Java编程练习Day12--》格式化字符串 -> 正文阅读

[Java知识库]Java编程练习Day12--》格式化字符串

Java编程练习Day12–》格式化字符

String类格式化当前日期


实例说明

在输出日期信息时,经常需要输出不同格式的日期,本实例中介绍了String字符串类中的日期格式化方法,实例使用不同的方式输出String类的日期格式参数值,组合这些值可以实现特殊格式的日期字符串。

使用String类的format()方法不但可以完成日期的格式化,也可以实现时间的格式化。时间格式化转换符要比日期转换符更多,更精确,他可以将时间格式化为时,分,秒,毫秒。

时间格式化转换符

转换符说明示例
%tH2位数字的24小时制的小时(00~23)14
%tI2位数字的12小时制的小时(01~12)05
%tk1位数字的24小时制的小时(0~23)5
%tl1位数字的12小时制的小时(1~12)10
%tM2位数字的分钟(00~59)05
%tS2位数字的秒数(00~60)12
%tL3位数字的毫秒数(000~999)920
%tN9位数字的微秒数(000000000~999999999)062000000000
%tp指定语言环境下上午或下午标记下午、pm
%tz相对于GMT RFC 82 格式的数字时区偏移量+0800
%tZ时区缩写形式的字符串CST
%ts1970-01-01 00:00:00 至现在经过的秒数120642666
%tQ1970-01-01 00:00:00 至现在经过的毫秒数1206426737453

测试代码


import java.util.Date;
import java.util.Locale;

/**
 * @author nanqi-code
 * @create 2021/8/30-16:44
 */
public class Example {
    public static void main(String[] args) {
        Date today = new Date();
        //格式化后的字符串为月份的英文缩写
        String a = String.format(Locale.US, "%tb",today);
        System.out.println("格式化后的字符串为月份的英文缩写:"+a);
        //格式化后的字符串为月份的英文全写
        String b = String.format(Locale.US, "%tB",today);
        System.out.println("格式化后的字符串为月份的英文全写:"+b);
        //格式化后的字符串为星期(如周一)
        String c =String.format("%ta", today);
        System.out.println("月格式化后的字符串为星期(如周一):"+c);
        //格式化后的字符串为星期(如星期一)
        String d =String.format("%tA", today);
        System.out.println("月格式化后的字符串为星期(如星期一):"+d);
        //格式化后的字符串为4位的年份值
        String e = String.format("%tY",today);
        System.out.println("格式化后的字符串为4位的年份值:"+e);
        //格式化后的字符串为2位的年份值
        String f = String.format("%ty",today);
        System.out.println("格式化后的字符串为2位的年份值:"+f);
        //格式化后的字符串为2位的月份值
        String g = String.format("%tm",today);
        System.out.println("格式化后的字符串为2位的月份值:"+g);
        //格式化后的字符串为2位的日期值
        String h = String.format("%td",today);
        System.out.println("格式化后的字符串为2位的日期值:"+h);
        //格式化后的字符串为1位的日期值
        String i = String.format("%te",today);
        System.out.println("格式化后的字符串为1位的日期值:"+i);
    }
}

运行结果

在这里插入图片描述

字符串大小写转换


实例说明

在程序设计的过程中,经常会遇到一些情况,在验证用户登录时,如果用户名不区分大小写,那么在代码中,应当使用一种方法排除字母大小写的因素,然后再对比数据库中的用户名与用户输入的用户名是否相等。可以先将数据库中的用户名全部大写,再将用户输入的用户名全部大写,最后对比是否相等。本实例所使用的技术可以方便的将字符串中的字母全部转换成大写或小写。

测试代码


import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

/**
 * @author nanqi-code
 * @create 2021/8/30-17:01
 */
public class ToggleCaseWindow extends JFrame {

    //创建文本框组件
    JTextField text1;
    JTextField text2;
    //创建转换按钮
    JButton toCase;
    //创建单选框组件
    JRadioButton toUpper;
    JRadioButton toLower;
    //创建单选框按钮组
    ButtonGroup group;

    public ToggleCaseWindow(){
        text1 = new JTextField(10);
        text2 = new JTextField(10);
        toCase = new JButton("转换");
        toUpper = new JRadioButton("大写");
        toLower = new JRadioButton("小写");
        group = new ButtonGroup();

        //设置窗体的标题
        setTitle("字符串大小写转换");
        //设置窗体的关闭方式
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        //设置窗体可见
        setVisible(true);
        //设置窗体的布局为空布局
        setLayout(null);
        //设置窗体在窗口中的位置和大小
        setBounds(250, 250, 500, 245);

        //设置各个组件的位置
        text1.setBounds(20,20,420,35);
        text2.setBounds(20,135,420,35);
        toCase.setBounds(20, 86, 85, 30);
        toUpper.setBounds(130,86,50,30);
        toLower.setBounds(240,86,50,30);

        //为转换按钮添加时间监听器
        toCase.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                //判断当前单选框是否选中大写按钮
                boolean upper = group.isSelected(toUpper.getModel());
                //获取输入文本
                String text = text1.getText();
                if(upper){
                    //将文本内容转换成大写
                    text2.setText(text.toUpperCase());
                }else{
                    //将文本内容转换成小写
                    text2.setText(text.toLowerCase());
                }
            }
        });

        //将单选按钮添加到按钮组中
        group.add(toUpper);
        group.add(toLower);
        //将各个组件添加到窗体中
        add(text1);
        add(text2);
        add(toCase);
        add(toUpper);
        add(toLower);

    }

    public static void main(String[] args) {
        new ToggleCaseWindow();
    }
}

运行结果

在这里插入图片描述
在这里插入图片描述

字符与Unicode码的转换


实例说明

Unicode是一种字符编码,它可以显示各国语言的各种文字,标点,制表符等所有字符,也是现今最通用的字节编码系统。在程序设计中,可以方便的将字符串转换为Unicode码,也可以将Unicode码转换为字符。
本实例使用字符串对象的toCharArray()方法获取字符数组,数组中的每一个元素都是字符串的一部分。

该方法声明如下:

public char[] toCharArray()
该方法可以把字符串中的每个字符拆分,方法的返回值就是字符串中每个字符组成的字符数组。

测试代码

package com.zhang.exer.day12;

import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.NumberFormat;

/**
 * @author nanqi-code
 * @create 2021/8/30-17:58
 */
public class CharacterASCII extends JFrame {
    JLabel tip;
    JTextField text1;
    JTextField text2;
    JFormattedTextField text3;
    JTextField text4;
    JButton button1;
    JButton button2;
    public CharacterASCII(){
        tip = new JLabel("字符与Unicode码转换");
        text1 = new JTextField(10);
        text2 = new JTextField(10);
        text3 = new JFormattedTextField(NumberFormat.getIntegerInstance());
        text4 = new JTextField(10);
        button1 = new JButton("转换成Unicode编码");
        button2 = new JButton("转换为字符");

        //设置窗体的标题
        setTitle("字符与编码的转换");
        //设置窗体的关闭方式
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        //设置窗体可见
        setVisible(true);
        //设置窗体的布局为空布局
        setLayout(null);
        //设置窗体在窗口中的位置和大小
        setBounds(250, 250, 758, 225);

        //设置各个组件的位置
        tip.setBounds(20, 20, 150, 30);
        text1.setBounds(20,60,235,35);
        button1.setBounds(285,60,160,30);
        text2.setBounds(480,60,235,35);
        text3.setBounds(20,100,235,35);
        button2.setBounds(285,100,160,30);
        text4.setBounds(480,100,235,35);

        button1.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                String text = text1.getText();//获取用户输入的字符串
                char[] charArray = text.toCharArray();//获取字符串的字符数组
                StringBuilder builder = new StringBuilder();//创建字符串构造器
                for (char c:charArray
                     ) {
                    builder.append((int)c+" ");//连接各个字符的编码
                }
                text2.setText(builder.toString());//结果输出到文本框
            }
        });

        button2.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                Number value = (Number) text3.getValue();//获取用户输入的Unicode编码
                long code = value.longValue();//获取输入数字的long类型值
                text4.setText((char)code+"");
            }
        });

        add(text1);
        add(text2);
        add(text3);
        add(text4);
        add(button1);
        add(button2);
        add(tip);

    }

    public static void main(String[] args) {
        new CharacterASCII();
    }

}

运行结果

在这里插入图片描述

往日精彩

Java编程练习Day11–》格式化字符串
Java编程练习Day10–》数组排序与查询02
Java编程练习Day09–》数组排序与查询01
Java编程练习Day08
Java编程练习Day07
Java编程练习Day06
Java编程练习Day05
Java编程练习Day04
Java编程练习Day03
Java编程练习Day02
Java编程练习Day01

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2021-08-31 15:19:02  更:2021-08-31 15:20:24 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 13:22:31-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码