java中常用的方法

重写DefaultTableCellRenderer的getTableCellRendererComponent导致JTable“无法”选择行(row)的原因 实际上是选择了的,因为自定义的cell渲染导致看不出来row被选中。可以通过isSelected为选定行的全部或部分单元格设置特殊的渲染,以显示哪行被选中了。 protected void setDefaultRenderer(){ setDefaultRenderer(Object.class, new DefaultTableCellRenderer(){ //设置单元格内容居中 public void setHorizontalAlignment(int 阅读详情


格式时间================================================================ ====
        SimpleDateFormat bartDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Date now = new Date();
        String defaultDate = bartDateFormat.format(now);
        System.out.println(defaultDate);

获取一天的开始始时间==============================================================
public static Date getBeginDate(Date date) {
        if (date == null) {
            return null;
        }
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        // calendar.set(Calendar.HOUR_OF_DAY, 0);
        // calendar.set(Calendar.MINUTE, 0);
        // calendar.set(Calendar.SECOND, 0);
        // calendar.set(Calendar.MILLISECOND, 0);
        calendar.add(Calendar.DATE, -1);
        // return calendar.getTime();
        return getEndDate(calendar.getTime());
    }

获取一天的结束时间==============================================================
    public static Date getEndDate(Date date) {
        if (date == null) {
            return null;
        }
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        calendar.set(Calendar.HOUR_OF_DAY, 23);
        calendar.set(Calendar.MINUTE, 59);
        calendar.set(Calendar.SECOND, 59);
        return calendar.getTime();
    }

获取该月的头天或最后一天===========================================================
public static Date getMonthEnd(Date date) {
        Calendar clar = Calendar.getInstance();
        clar.setTime(date);
        clar.set(Calendar.YEAR, clar.get(Calendar.YEAR));
        clar.set(Calendar.DAY_OF_MONTH, clar.getActualMaximum(Calendar.DATE));//该月的最后一天
        clar.set(Calendar.DAY_OF_MONTH, clar.getActualMinimum(Calendar.DATE));//该月的头一天
        return clar.getTime();
    }

时间的获取处理================================================================
        Calendar beginCa = Calendar.getInstance();
        Date now = new Date();
        beginCa.setTime(now);
        System.out.println(bartDateFormat.format(beginCa.getTime()));
        beginCa.add(Calendar.YEAR, 5);
        System.out.println(bartDateFormat.format(beginCa.getTime()));
        now=beginCa.getTime();
        System.out.println(bartDateFormat.format(now));

匹配类型=====================================================================
        String s = "home-home-home-home-home-home";
        Pattern p = Pattern.compile("home");
        Matcher m = p.matcher(s);
        System.out.println("m.find()----------------------------");
        int j=0;
        while (m.find()) {// Matcher.find( )的功能是发现s里的,与pattern相匹配的多个字符序列。
            System.out.println(j+"**Match /"" + m.group() + "/" at positions "
                    + m.start() + "-" + (m.end() - 1));
            j++;
        }
        int i = 0;
        System.out
                .println("-------------");
        System.out.println("m.find(i)----------------------------");
        while (m.find(i)) {// Matcher.find(i)是带int参数的,它会告诉方法从哪里开始找——即从参数位置开始查找。
            System.out.println(i+"**Match /"" + m.group() + "/" at positions "
            + m.start() + "-" + (m.end() - 1));
            i++;
        }
        System.out
                .println("------------");
        System.out.println("m.matches()----------------------------");
        String s1 = "home-home";
        Pattern p1 = Pattern.compile("home-home");
        Matcher m1 = p1.matcher(s1);
        if (m1.matches()) {// matches( )的前提是Pattern匹配整个字符串
            System.out.println("Match /"" + m1.group() + "/" at positions "
                    + m1.start() + "-" + (m1.end() - 1));
        } else {
            System.out.println(m1.matches());
        }
        System.out
                .println("---------------");
        System.out.println("m.lookingAt()----------------------------");
        String s2 = "home-home";
        Pattern p2 = Pattern.compile("home");
        Matcher m2 = p2.matcher(s2);
        if (m2.lookingAt()) {// lookingAt( )的意思是Pattern匹配字符串的开头。
            System.out.println("Match /"" + m2.group() + "/" at positions "
                    + m2.start() + "-" + (m2.end() - 1));
        } else {
            System.out.println(m1.lookingAt());
        }
    }

文件的读取和写入================================================================
String s, a, b, c;
        HashMap m = new HashMap();
        String[] e;
        String[] f = new String[6];
        BufferedInputStream in = new BufferedInputStream(new FileInputStream(
                "D:......read.in"));
        BufferedReader br = new BufferedReader(new InputStreamReader(in, "gbk"));
        BufferedInputStream in2 = new BufferedInputStream(new FileInputStream(
                "D:......read2.in"));
        BufferedReader br2 = new BufferedReader(new InputStreamReader(in2));
        BufferedWriter out = new BufferedWriter(
                new OutputStreamWriter(
                        new BufferedOutputStream(
                                new FileOutputStream(
                                        "D:......................write.out"))));
        while ((s = br.readLine()) != null) {
            out.write(s);
        }
        in.close();
        br.close();
        in2.close();
        br2.close();
        out.close();

浮点数设置小数位================================================================
private Double formatDouble(Double value) {
        DecimalFormat df = new DecimalFormat("#.##");// 按照指定格式截取,最多保留两位小数,截取方式是"四舍五入"
        if (value != null) {
            return Double.valueOf(df.format(value.doubleValue()));
        } else {
            return 0.0;
        }
    }
    private Double setDoubleDigit(Double value,int digit){
        DecimalFormat df = new DecimalFormat();
        df.setMaximumFractionDigits(digit);
        return Double.valueOf(df.format(value));
    }
    public static void main(String[] args) {
        TestDoubleFormat testDoubleFormat = new TestDoubleFormat();
        DecimalFormat df = new DecimalFormat("#.##");// 按照指定格式截取,截取方式是"四舍五入"
        Double a = 99.1155896;
        System.out.println("a=" + df.format(a));
        System.out.println("testDoubleFormat.formatDouble(a)="
                + testDoubleFormat.formatDouble(a));//没有格式化的会用科学计数法显示
        System.out.println("testDoubleFormat.setDoubleDigit(a,3)="
                + testDoubleFormat.setDoubleDigit(a,3));//设置小数位
        a = testDoubleFormat.formatDouble(a);
        System.out.println("a=" + df.format(a));
    }
输出:
a=99.12
testDoubleFormat.formatDouble(a)=99.12
testDoubleFormat.setDoubleDigit(a,3)=99.116
a=99.12
改变table中的一列的显示数据=========================================================
//用来重新计算两个截取小数点后的相乘值
    private void castValue(final JTable jTable, int multiplicationColNum,
            final int fColNum, final int sColNum) {
        jTable.getColumnModel().getColumn(multiplicationColNum)
                .setCellRenderer(new DefaultTableCellRenderer() {
                    public Component getTableCellRendererComponent(
                            JTable table, Object value, boolean isSelected,
                            boolean hasFocus, int row, int column) {
                        super.getTableCellRendererComponent(table, value,
                                isSelected, hasFocus, row, column);
                        super.setText((value == null) ? "0"
                                : multiplicationValue(Double
                                        .parseDouble((String) value), jTable
                                        .getModel().getValueAt(row, fColNum),
                                        jTable.getModel().getValueAt(row,
                                                sColNum)));
                        return this;
                    }
                });
    }
 
 

嵌入式系统中的轻量级压缩实践——miniLZO在STM32上的性能优化 本文深入探讨了miniLZO轻量级压缩算法在STM32嵌入式系统中的性能优化实践。通过对比无损压缩算法的性能特点,详细解析了miniLZO在内存占用、压缩速度方面的优势,并提供了STM32移植、参数调优及创新应用案例,帮助开发者在资源受限环境中实现高效数据压缩。 阅读详情

相关推荐

从CentOS迁移到openEuler 24.03 LTS:手把手教你部署Java+MySQL+Redis+Nginx全栈环境

本文详细指导如何从CentOS迁移到openEuler 24.03 LTS,并部署Java+MySQL+Redis+Nginx全栈环境。涵盖系统配置、软件安装、性能优化及环境验证,助力企业级用户高效完成服务器迁移与部署。

weixin_26938645的博客 389

java表格的使用 单元格绘制二

JTable单元格是由单元格绘制器绘制出来的,这是一些执行TableCellRenderer接口的类。TableCellRenderer接口定义了唯一的getTableCellRendererComponent方法,返回对Component的引用,二Component则用来实现绘图操作。但是因为定义单独的类来执行TableCellRenderer比较方便,而且可以实现绘图操作,所以T...

dinggujiao8462的博客 318

LoRa项目实战:手把手教你为ESP32选配和焊接天线(从PCB到信号测试)

本文详细介绍了为ESP32选配和焊接LoRa天线的全流程,包括天线选型、PCB布局设计、焊接工艺及信号测试。重点解析了PCB板载天线、导线天线和陶瓷贴片天线的适用场景与性能特点,并提供专业的焊接技巧和信号测试方案,帮助开发者优化LoRa模块的无线通信性能。

weixin_30470643的博客 393

JTable通过TableCellRenderer和TableCellEditor支持自定义数据类型(checkbox等)

概述 JTable通过TableCellRenderer和TableCellEditor这两个接口实现每个单元格的渲染和编辑,这两个接口都各有一个方法可以返回JComponent的子类,例如BooleanRenderer对应的是Boolean类型的数据,getTableCellRendererComponent返回的是JCheckBox: class BooleanRenderer extends...

liucc09的博客 4489

vfsglobal预约系统登录问题全解析(by quqi99)

本文全面解析VFS Global预约系统登录常见问题,包括IP限制、验证码验证失败及账号自动删除等。提供详细的解决方案,如DNS配置、浏览器设置及邮箱选择建议,帮助用户顺利完成签证预约。特别针对中国用户遇到的IP限制问题,给出了实用技巧。

gamma的博客 1341

scDeepCluster_pytorch代码解读与文章理解

论文:Clustering single-cell RNA-seq data with a。

qq_34179307的博客 915

java自定义表格渲染器,如何正确使用自定义渲染器绘制JTable中的特定单元格?...

I have a JTable component in my GUI which displays psuedocode of an algorithm. I want to highlight the current line of execution by changing the background of a particular cell and then changing the c...

weixin_34036667的博客 361

windows下宝塔安装教程

windows下宝塔安装教程 目录宝塔是什么?宝塔安装流程1.下载2.配置3.登录4.安装的环境套件小结 宝塔是什么? 宝塔是管理服务器的免费的软件,宝塔上面可以进行对你的服务器批量进行管理,对于运维人员来说还是必不可少的一个软件,值得使用。 宝塔安装流程 1.下载 链接: https://download.bt.cn/win/panel/BtSoft.zip 下载后安装买最好自定义目录,方便找 2.配置 下载完成后会出现这个页面,对着页面进行配置 点击默认密码复制进来,这里注意一点就是一定要查看

你在看屏幕的同时,屏幕也在注视着你 4423

JAVA中的常用方法

JAVA中最最最常用方法 从上述两图可看出toString方法用于重写自定义类中的返回值内容,若在自定义类中不进行toString的重写,从而直接输出自定义类的变量从而输出结果为该自定义类的一个内存地址值,若重写toString方法,则输出打印的值将会是你重写返回的结果equals:比较两个引用型数据内容(如String数据类型)是否相等,相同时返回ture不同返回false,且该方法用于字串串内容的比较时是不会忽略字母大小写的equalsIgnoreCas...

weixin_65363103的博客 1877

智能生活中枢:基于 ESP32-S3 的桌面智能助手与日程提醒终端设计与实现

本文完成了基于 ESP32-S3 的桌面智能助手与日程提醒终端的完整设计,实现了时间同步、日程管理、声光提醒、环境监测、本地存储等核心功能。硬件接线简洁、软件逻辑清晰,可直接制作成品使用。硬件方案:以 ESP32-S3 为核心,搭配 OLED、DS3231、DHT11、按键、声光模块,接线标准化、易复刻;软件方案:基于 Arduino 开发,提供标准 Mermaid 软件流程图,代码模块化、可直接编译运行;核心功能:网络授时、本地日程管理、掉电存储、声光提醒、温湿度监测,满足桌面智能助手全场景需求。

weixin_42300449的博客 209

Agentic RL: 大模型后训练 SFT、PPO和GRPO

本文介绍了从LLM训练到Agentic RL的发展过程。传统LLM训练包括预训练和后训练两个阶段,其中后训练通过监督微调、奖励建模和强化学习等技术优化模型表现。针对智能体在复杂任务中的不足,提出了Agentic RL新范式,将LLM嵌入强化学习框架,通过多步交互、工具使用和环境反馈来优化长期目标。相比传统单轮对话优化(PBRFT),Agentic RL具有状态包含历史上下文、行动类型多样、动态状态转移等特点,更适合解决需要多步推理和规划的任务。这种新方法为开发更强大的智能体系统提供了可能。

Cachel Wood的博客 698

java中String的常用方法

java中String的常用方法

HRSR1314的博客 2791

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Java中String类的常用方法

总结了String类的常用方法

m0_53067943的博客 1万+

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Java中几个常用类方法汇总

Java中几个常用类方法汇总,如:Integer,Character,String,StringBuilder,StringBuffer等

qq_43857727的博客 1484

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Java中Math类常用方法

Java中Math类常用方法数学常量:常用方法:求绝对值:求最大值:求最小值:向四舍五入不常用方法:三角函数:反三角函数:其他: Math类是一个包含了很多数学常量与计算方法的类,里面的方法全是静态方法。Math类位于java.lang包下,一般能够自动导入。有兴趣的话可以查看官方的文档:https://docs.oracle.com/javase/8/docs/api/java/lang/Mat...

Sunshine的博客 2659

Java 中的ArrayList常用方法总结

在指定的位置插入指定的元素。返回列表中最后一次出现的指定元素的索引,如果未找到则返回-1。返回列表中第一次出现的指定元素的索引,如果未找到则返回-1。从指定的位置开始,将指定集合中的所有元素插入到列表中。返回一个包含列表中所有元素的数组,数组类型为指定类型。将指定集合中的所有元素添加到列表的末尾。用指定的元素替换列表中指定位置的元素。移除列表中所有包含在指定集合中的元素。仅保留列表中包含在指定集合中的元素。返回一个包含列表中所有元素的数组。将指定的元素添加到列表的末尾。返回列表中指定位置的元素。

lxsxjsj的博客 1215

【Java基础】Java中Map集合的常用方法

在本文中,我们将介绍 Java 集合 Map 的常用方法,以便让读者更好地理解和运用它们。

yubao0723的专栏 1万+

java中Object类的常用方法

总之,notify()方法是Java中用于线程间通信的重要方法之一,但需要注意的是,notify()方法只会唤醒等待在当前对象上的一个线程。另外,对于数组对象而言,getClass()方法返回的是描述数组类型的Class对象,而不是数组中元素的类型的Class对象。在Java中,如果两个对象的equals()方法返回true,则它们的哈希码必须相等,即hashCode()方法返回的值相等。需要注意的是,notifyAll()方法会唤醒所有等待在当前对象上的线程,包括已经获取了锁但是还没有执行的线程。

weixin_53066120的博客 1万+

java byte 方法_Java Byte类的常用方法有哪些?常用方法介绍

下面要给大家讲到的就是Java Byte类方面的一些知识,主要讲到了JavaByte类的常用方法,那么你知道它的常用方法都有哪些吗?一起来简单的了解一下吧。在Byte类内部包含了一些和Byte操作有关的方法(Byte类中的常用方法):byteValue()----返回值:byte;功能:以一个 byte 值返回 Byte 对象;compareTo(Byte bytel)----返回值:int;功能...

weixin_42573757的博客 639

java常用类及其常用方法总结

java常用类 1.Integer类 构造方法 ​ (1)Integer(int number) 以一个int型变量作为参数来获取Integer对象 Integer number=new Integer(7); ​ (2) Integer(String str) 以一个string类型变量作为参数来获取Integer对象 Integer number=new Integer("123"); //字符串变量的值一定要是数值型的,例"456" 常用方法 方法 返回值 功能描述 valueOf(

Miraitowup的博客 482

Java的File常用方法

Java中的File类位于java.io包中,用于表示文件和目录路径。它提供了创建、查询和操作文件/目录的方法,但不涉及文件内容读写。主要功能包括:获取文件信息(路径、大小、修改时间等)、目录内容遍历、文件/目录创建/删除/重命名等操作。通过构造函数可创建不同形式的File对象,使用getAbsoluteFile()、getName()等方法获取文件属性。常用操作还包括判断文件类型(isFile()/isDirectory())、检查权限(canRead()/canWrite())以及管理文件系统(mkdi

qq_45419262的博客 434

java枚举类常用方法

package com.czh.log.enums; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; /** * author czh^_^ */ public enum StatusEnum { UNPAID(1, "待支付"), ...

qq376745187的博客 208

Java中Map集合的常用方法

Map是一个强大且灵活的数据结构,可以高效地处理键值对的数据。通过不同的实现类,我们可以根据需求选择最适合的Map类型。在实际开发中,理解和使用Map的各种方法能够帮助我们更加高效地管理和操作数据。

00后诚续缘 748

Java_Class的常用方法

/输出cls的运行类型:class java.lang.Class。System.out.println("=====得到Car类的所有的属性(字段)=====");//6.通过反射获取Car中的某个属性:这里获取brand。

2301_79293946的博客 426

JAVA学习:JAVA中一些常用的方法和使用技巧

目录 一、修改数据结构中的Compare 二、向二维数组中快速填充同一个元素: 三、StringBuilder的常用方法: 四、Math的常用方法:参考链接菜鸟教程 五、字符串 六、容器类 一、修改数据结构中的Compare Comparable和Comparator的区别:[https://blog.youkuaiyun.com/qq_37768971/article/detai...

IMUHERO 512
上一篇: 浅谈CPU中的缓存技术原理
下一篇: java对象的集合上
QJC13
博客等级 码龄19年 9粉丝 23原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值