精华内容
下载资源
问答
  • 的Java SE总结(四)

    2020-09-13 01:03:40
    3.提供一些常量字段:查询该类型数据一些信息:最大值,最小值,存储位数 对应关系 byte -> Byte short -> Short int -> Integer long -> Long float -> Float double -> Double char -&...

    Java常用类

    一、包装类
    概念
    Java为每种基本数据类型,提供对应的类
    作用
    1.提供一些方法供使用
    2.继承Object,以重写Object类中的方法
    3.提供一些常量字段:查询该类型数据的一些信息:最大值,最小值,存储的位数
    对应关系
    byte -> Byte
    short -> Short
    int -> Integer
    long -> Long
    float -> Float
    double -> Double
    char -> Character
    boolean -> Boolean
    自动装箱/拆箱
    自动将常量转换为与其数据类型对应的包装类/将包装类转换为常量
    享元模式
    整数的几个包装类内部把常用 [-128,127] 的数据缓存起来,当对象需要赋值时需要先在缓存中查找是否有相应的值

    二、数学相关类
    Math
    包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数
    BigInteger
    能够表示比long更大的整数
    BigDecimal
    能够表示比double更精确的小数,常用于金融领域

    三、System类
    常用方法
    arraycopy(Object[] src, int srcPos, Object[] dest, int destPos, int length)
    将一个数组从某个位置开始的元素复制到另一个数组的某个位置
    currentTimeMillis
    显示当前的时间毫秒数

    四、runtime类
    作用
    可以通过Java代码执行启动一个进程(一个应用程序)
    使用方式
    1. 获取对象(通过静态方法获取)

    Runtime runtime = Runtime.getRuntime();
    

    2.Process exec(String command) 通过字符串参数,启动对应名字的进程,并且返回该进程
    注意
    不配置环境变量的情况下只能执行启动该文件夹 c:\windows\system32下
    * @throws IOException

    五、字符串相关类
    String类
    底层是基于char[], 一旦创建长度就固定不变了,适用于字符串不经常增删改的操作的场景
    StringBuilder类与StringBuffer类
    类中的方法相似,Builder类性能更好,Buffer类稳定性更好(保证线程安全)。底层是预先设置了16位长度的数组,扩容机制:2*原长度+2
    转换string效率
    toString() > String.valueOf(Object obj); > +因为+号,底层先将字符串对象转换为StringBuilder对象,然后调用StringBuilder对象的append追加字符串方法,再调用toString方法转换为String对象
    拼接字符串效率
    StringBuilder.append() > StringBuffer.append() > +
    使用场景
    String:不用经常操作字符串时使用,节省空间
    StringBuilder:单线程和多线程没有线程安全要求
    StringBuffer:多线程,有线程安全要求

    六、随机数相关类
    ThreadLocalRandom(推荐使用)
    获取对象

    static ThreadLocalRandom current() 
    

    调用方法

    int nextInt(int origin, int bound)
    

    UUID(推荐使用)
    作用:获取对象并生成随机码
    获取随机码对象的方法:static UUID randomUUID()
    Random(不推荐使用)
    获取对象

    Random(long seed)
    

    调用方法

    int nextInt(int bound)
    

    Math(不推荐使用)
    调用方法

    static double random()
    

    七、日期(时间)相关类
    时间类Date
    构造方法
    创建当前时间对象

    Date()
    

    以指定毫秒数转化为时间对象

    Date(long time)
    

    普通方法
    将当前Date对象转换为long类型的时间毫秒数

    long getTime()
    

    将long类型时间毫秒数转换为对应的Date对象

    void setTime(long time)
    

    判断是否在指定日期之前

    before(Date date)
    

    判断是否在指定日期之后

    after(Date date)
    

    日期类Calender
    构造方法
    获取一个对象

    Calendar.getInstance()
    

    普通方法
    获取某一个字段(当前Calendar常量)的时间

    int get(int field)
    

    添加时间操作

    abstract void add(int field, int amount) 
    

    根据当前Calendar常量设置时间

    void set(int field, int value)
    

    将Calendar对象转换为Date类型

    Date getTime()
    

    将Date转换为Calendar

    void setTime(Date date)
    

    判断是否在指定日期之后

    boolean after(Object when)
    

    判断是否在指定日期之前

    boolean before(Object when)
    

    时间格式化类SimpleDateFormat
    构造方法
    创建默认对象

    SimpleDateFormat()
    

    创建一个含有指定字符串模板的SimpleDateFormat对象

    SimpleDateFormat(String pattern)
    

    普通方法
    将date对象转化为指定格式的string对象

    format(Date date)
    

    将字符串转化为日期对象

    parse(String s)
    

    重新设置格式

    applyPattern(String pattern)
    

    八、Arrays工具类
    排序

    Arrays.sort(int[] arr)
    

    数组中元素拼接为字符串

    Arrays.toString(int[] arr)
    

    查找某一元素在数组中第一次出现的下标

    Arrays.binarySearch(int[] arr, int i)
    

    扩容/缩容

    Arrays.copyOf(int[] arr, int i)
    

    将指定的两个下标之间的元素复制到新数组

    Arrays.copyOfRange(int[] arr, int from, int to)
    

    将数组中所有元素初始化为某一值

    Arrays.fill(int[] arr, int i)
    

    九、异常类
    概念
    代码正常运行不会出问题,但是遇到意外,参数变量,不符合要求,发生意外,代码终止运行。代码中的异常处理好了,代码就可以顺利的继续运行

    处理方式
    1.捕获异常
    语法结构:

    try{
    //可能产生异常的代码
    }catch(捕获的异常类型 e){//e是形式参数
    //该异常捕获之后要做的操作
    }catch(捕获的异常类型 e){//e是形式参数
    //该异常捕获之后要做的操作
    }finally{
    //异常发生之后一定会执行到的语句块:①流资源关闭②释放锁
    }
    

    执行顺序
    1)顺序执行:进入异常捕获语句块
    2)如果产生异常,执行catch捕获,捕获到对应异常,并且对应catch后面的代码块
    3)finally语句块一定会执行到:前提前面语句没有执行System.exit(0)退出虚拟机

    2.抛出异常
    语法结构
    方法后面使用throws 需要抛出的异常类型
    注意事项
    ①方法抛出运行时异常,在方法头可以不用抛出异常
    ②方法抛出编译时异常:方法必须处理异常,或者抛出同类异常,或者抛出异常该异常的父类类型异常

    获取异常信息的方式
    异常捕获分析
    1.写多个捕获异常的语句块,链式结构捕获多异常,根据不同的异常,做不同的处理
    2.捕获异常可以写异常的父类,也可以捕获到对应子类的异常
    3.catch(捕获的异常类型 e)捕获的异常实际捕获一个异常对象,该对象e可以在catch语句块直接使用
    获取信息的方式
    方式1: System.out.println(e);
    方式2: System.out.println(e.getMessage());
    方式3: e.printStackTrace();//获取并打印异常信息最常用的方式

    finally结构
    介绍
    1.try-catch语句块可以用写finally,处理异常之后finally语句块一定会执行到
    2.finally语句块中,一般用来关闭流资源、释放锁
    注意事项
    1.一般不要在finally里面写返回语句,程序难理解
    2.finally语句之前,如果有执行退出虚拟机,也是不会执行finally语句块

    自定义异常
    概念
    java已经写好很多异常,但不能满足开发中所有异常描述的需求,所以需要自定义异常
    定义方式
    1.自定义类继承异常类
    2.参照其他异常通过Exception设置异常提示信息

    展开全文
  • 最大的不同是,Hashtable方法是Synchronize,而HashMap不是,在多个线程访问Hashtable时,不需要自己为它方法实现同步,而HashMap 就必须为之提供外同步。 Hashtable和HashMap采用hash/rehash算法都大概...
  • 需要根据场次编号字母得到下...查询得到字符 char 类型可以直接转化成 int 类型, 得到数值是该字符ASCII。   那么得到代码:   //字符编码如: 001a1 ,, 002b3 之类。 public int getNumOfs...

    需要根据场次编号的字母得到下一个字母, 来生成场次编号。

     

    比如: 目前最大的字母是 d 那么, 生成的下一个字母就是 e , 依次类推。

     

    查询得到字符 char 类型可以直接转化成 int 类型, 得到的数值是该字符的ASCII值。

     

    那么得到代码:

     

    //字符编码如: 001a1 ,,  002b3 之类。
    
    
    	public int getNumOfsim(SimSuite simtuit) {
    		// TODO Auto-generated method stub\
    		String sql = " select MAX(S_NO) from xxxxxxx m WHERE m.suite_id IN ("+
    			"SELECT t.suite_id FROM xxxxxxx t "+
    			"where t.ac_type_code= '" + simtuit.getAcType() + "' and t.fixed_year='" +simtuit.getFixedYear()+"'"+" and t.train_com="+simtuit.getTrainCom()
    		+" and t.batch_no='"+simtuit.getBatchNo()+"')";
    		
    		String maxSno = (String) jdbcTemplate.queryForObject(sql, String.class);
    		if(maxSno == null || maxSno.length()<3){
    			return 0;
    		}
    		//取倒数第二位
    		char maxChar = maxSno.charAt(maxSno.length()-2);
    		int rst = maxChar;
    	  return rst-96;
    	}

     

    展开全文
  • Java开发技术大全(500个源代码).

    热门讨论 2012-12-02 19:55:48
    outputMax.java 求两个数中的最大数 overflowExample.java 演示溢出 precedence.java 演示自加运算符的优先级 primeNumber.java 输出100-200之间的所有素数 ranking.java 评定成绩等级 rankingBySwitch.java ...
  • java 面试题 总结

    2009-09-16 08:45:34
    最大的不同是,Hashtable方法是Synchronize,而HashMap不是,在多个线程访问Hashtable时,不需要自己为它方法实现同步,而HashMap 就必须为之提供外同步。 Hashtable和HashMap采用hash/rehash算法都大概...
  • Java程序员面试宝典pdf

    热门讨论 2013-02-21 13:06:13
    面试题039 char的取值范围 65 面试题040 char能否存储汉字 66 面试题041 如何使用转义字符 67 4.5 String型数据 68 面试题042 字符串字面量是否自动生成一个String对象 68 面试题043 字符串对象池的作用是什么 69 ...
  • 面试题183 自己的最大优缺点是什么 336 面试题184 你希望的待遇为多少 336 面试题185 你认为团队工作和独自干活哪样效率更高 337 面试题186 如果你所处的团队中,并不是每个成员都承担着 相同的工作量,你会怎样...
  • Mysql 函数 ... MAX(): 求最大值 MIN(): 求最小值 字符串函数: LOWER/UPPER: 将查询出来结果小写/大写 CONCAT: 连接字符串 CHAR_LENGTH/LENGTH: 查询字符串长度 LPAD/RPAD: 左右填充 LTR...

    Mysql

    函数

    一、单行函数:

      COUNT(): 查询表中数据条数
      AVG(): 求平均数
      SUN(): 求和
      MAX(): 求最大值
      MIN(): 求最小值
      字符串函数:
      LOWER/UPPER: 将查询出来的结果小写/大写
      CONCAT: 连接字符串
      CHAR_LENGTH/LENGTH: 查询字符串长度
      LPAD/RPAD: 左右填充
      LTRIM/RTRIM/TRIM: 去掉左/右/左右空格。中间无法去除
      REPLACE: 替换
      SUBSTRING: 截取字符串
      数字函数
      ABS/MOD:绝对值/取余
      CEIL: 大于等于其本身的整数值
      FLOOR: 小于等于其本身的整数值
      ROUND: 四舍五入
      日期函数:
      NOW(): 当前时间
      CURDATE(): 当前日期
      CURTIME(): 当前时间
      Extract():选取日期时间的各个部分
      last_day(): 当前月份最后一天
      日期函数计算:
      DATE_ADD(): 时间相加
      DATE_SUB(): 时间相减
      datediff():日期相减 
      timediff():时间相减
      str_to_date(): 字符串转换为日期
      date_format(),time_format(): 日期转为字符串
    

    例子:

    字符串函数

    1. LOWER/UPPER
    SELECT LOWER("AAbccaH") FROM DUAL; #aabccah
    SELECT UPPER("AAbccaH") FROM DUAL; #AABCCAH
    
    1. concat 拼接字符
    SELECT CONCAT('666','_','111') FROM DUAL; #666_111
    SELECT CONCAT('666','111') FROM DUAL;     #666111
    
    1. CHAR_LENGTH/LENGTH
    SELECT LENGTH("AAbccaH") FROM DUAL; #7
    
    1. LPAD/RPAD
    SELECT LPAD("a","4","cc") FROM DUAL; #ccca
    SELECT RPAD("a","4","cc") FROM DUAL; #accc
    
    1. LTRIM/RTRIM/TRIM
    SELECT TRIM(' a b c ') FROM DUAL; #a b c
    SELECT LTRIM(' a b c ') FROM DUAL; #a b c
    SELECT RRIM(' a b c ') FROM DUAL; # a b c
    
    1. REPLACE
    //语法
    //replace(object,search,replace)
    SELECT REPLACE("aaaa","a","c") FROM DUAL; #cccc
    
    1. SUBSTRING
    //substring(str, pos),即:substring(被截取字符串, 从第几位开始截取)
    //substring(str, pos, length),即:substring(被截取字符串,从第几位开始截取,截取长度)
    SELECT SUBSTRING("abcd" , 2) FROM DUAL; #bcd
    SELECT SUBSTRING("abcd" , 2,2) FROM DUAL; #bc
    

    数字函数

    1. ABS/MOD
    SELECT ABS(-2) FROM DUAL; #2
    SELECT MOD(2,3) FROM DUAL; #2
    
    1. CEIL/FLOOR
    SELECT CEIL(102.3) FROM DUAL; #103
    SELECT CEIL(102.3) FROM DUAL; #102
    
    1. ROUND
    SELECT ROUND(102.3) FROM DUAL; #102
    SELECT ROUND(102.5) FROM DUAL; #103
    

    日期函数

    1. NOW()/CURDATE()/CURTIME()/Extract()/last_day()
    
    SELECT NOW(),CURDATE(),CURTIME(),EXTRACT(HOUR FROM NOW()),LAST_DAY(NOW()) FROM DUAL;
    # '2019-09-16 17:27:59' '2019-09-16' '17:27:59' '17' '2019-09-30'
    
    1. DATE_ADD()/DATE_SUB()
    //SELECT DATE_ADD(date,INTERVAL expr unit) FROM DUAL;
    SELECT NOW(),DATE_ADD(NOW(),INTERVAL 1 MONTH) FROM DUAL; # 2019-09-16 17:37:31 2019-10-16 17:37:31
    SELECT NOW(),DATE_SUB(NOW(),INTERVAL 1 MONTH) FROM DUAL; # 2019-09-16 17:40:10 2019-08-16 17:40:10
    
    1. datediff(),timediff() 注意前后格式相同
    SELECT DATEDIFF(NOW(),NOW()) FROM DUAL; #0
    SELECT TIMEDIFF(NOW(),NOW()) FROM DUAL; #00:00:00
    SELECT TIMEDIFF(CURDATE(),"2016-2-3") FROM DUAL; #838:59:59
    
    1. str_to_date()后面与前面对应
    SELECT STR_TO_DATE("2018 9 10","%Y %m %d") FROM DUAL; # 2018-09-10
    SELECT STR_TO_DATE('08.09.2008 08:09:30', '%m.%d.%Y %h:%i:%s'); # 2008-08-09 08:09:30
    
    1. date_format(),time_format()
    SELECT DATE_FORMAT('2018-1-2 22:23:01', '%Y年%m月%日 %H时%i分%s秒'); #2018年01月日 22时23分01秒
    SELECT TIME_FORMAT('22:23:01', '%H时%i分%s秒'); #22时23分01秒
    
    1. mysql时区转换
    //SELECT CONVERT_TZ(dt,from_tz,to_tz);
    SELECT NOW(),CONVERT_TZ(NOW(),"+08:00","+00:00");# 2019-09-16 18:02:25 2019-09-16 10:02:25
    
    展开全文
  • 达内 coreJava 习题答案

    2010-02-10 19:49:01
    12、输入一个数据n,计算斐波那契数列(Fibonacci)第n个 1 1 2 3 5 8 13 21 34 规律:一个数等于前两个数之和 //计算斐波那契数列(Fibonacci)第n个 public class Fibonacci{ public static void main...
  • 开发随笔

    2011-01-06 16:38:48
     数据库中code字段类型是char(20),在用java获取code的最大值时,发现了一个问题。查询语句的max(code)虽然能够返回最大值,但是需要类型转换。当使用(String)强制类型转换时,程序会报错;当使用toString()...

    1、java获取char类型字段最大值

        问题描述:

           数据库中code字段类型是char(20),在用java获取code的最大值时,发现了一个问题。查询语句的max(code)虽然能够返回最大值,但是需要类型转换。当使用(String)强制类型转换时,程序会报错;当使用toString()转换时,获取的值始终是“0”。

        解决方法:

    使用Select  max(rtrim(code))  from  Instrument 去除尾随的空格,然后取最大值,再用toString()进行转换。

     

     

    2、JavaScript字符串比较

     

       stringObject.localeCompare(target)

         

    参数

    描述

    target

    要以本地特定的顺序与 stringObject 进行比较的字符串。


     

    返回值

     

    说明比较结果的数字。如果 stringObject 小于 target,则 localeCompare() 返回小于 0 的数。如果 stringObject 大于 target,则该方法返回大于 0 的数。如果两个字符串相等,或根据本地排序规则没有区别,该方法返回 0

     

    3、根据日期循环输出

     

     

     

    Calendar cal = Calendar.getInstance();
    
    SimpleDateFormat sdf_YM = new SimpleDateFormat("yyyy-MM");
    SimpleDateFormat sdf_YMD = new SimpleDateFormat("yyyy-MM-dd");
    
    //month是获取到的一个标量。村反一个String类型的字符串。
    
    //设置日期为当月的第一天
    cal.setTime(sdf_YM.parse(month + "-01"));
    							
    //当月第一天减1,获取上月的最后一天
    cal.add(Calendar.DAY_OF_MONTH,-1);
    							
    //获取记录的开始日期,上月的25日
    String startDay = sdf_YM.format(cal.getTime()) + "-25";
    							
    //获取记录的结束日期,当月的24日
    String endDay = month + "-24";
    							
    //设置日期为记录开始日期
    cal.setTime(sdf_YMD.parse(startDay));
    							
    //存放循环时,更新后的日期
    String day = startDay;
    														
    //如果更新后的日期大于记录的结束日期,则跳出循环
    while(endDay.compareTo(day) >=0){
    	//当前日期加1,获取下一次日期
    	cal.add(Calendar.DAY_OF_MONTH,1);
    						
    	//按照XXXX-XX-XX格式进行转换
    	day = sdf_YMD.format(cal.getTime());
    }
     

     

     

    展开全文
  • 因为自增的话,插入数据时候,数据库会在已经存在的数据库中查询找到id的最大值,然后在此基础上+1。由于一般id最大值不是数据总量,因此需要挨个比出来最大值,在数据库数据很多的情况下,会减小数据库
  • 并确保在同一事务处理种对相同数据两次查询看到是相同的值范围: TRUE | FALSE 默认值: FALSE row_locking: 说明: 指定在表已更新或正在更新时是否获取行锁。如果设置为 ALWAYS, 只有在表被更新后才获取...
  • 2021-04-07

    2021-04-07 23:18:31
    day02 本类属于查看对应类型的最大值与最小值; 1.1; Java提拱了对应的工具箱,int 比较特殊,他的工具箱是integer。 1.2; char类型可以保存单个英文单词,中文字符,数字, 但是在打印数字是,会先去ascii码表中...
  • Oracle 常用数据类型

    2012-08-22 22:05:15
    char(2000):定长最大为2000:  例如 char(10): 如果字段存 "中国" , 那么该字段实际为:“中国 ” 后面有6个空格。  特点:浪费空间,查询效率快。 特色例子: 身份证存储就可以用 ...
  • MySQL命令大全

    2018-01-15 11:19:17
    下面给出本人从其它资料(www.cn-java.com)获得对常用权限解释: 全局管理权限: FILE: 在MySQL服务器上读写文件。 PROCESS: 显示或杀死属于其它用户服务线程。 RELOAD: 重载访问控制表,刷新日志等。 ...
  •  删除环境变量中PATHT CLASSPATH中包含Oracle的值。  删除“开始”/“程序”中所有Oracle组和图标。  删除所有与Oracle相关目录,包括: C:\Program file\Oracle目录。 ORACLE_BASE目录。 C:\Documents ...
  • MYSQL常用命令大全

    2011-05-30 13:31:24
    下面给出本人从其它资料(www.cn-java.com)获得对常用权限解释: 全局管理权限: FILE: 在MySQL服务器上读写文件。 PROCESS: 显示或杀死属于其它用户服务线程。 RELOAD: 重载访问控制表,刷新日志等。 SHUTDOWN...
  • Oracle练习笔试大全

    2012-02-12 19:06:41
    // (函数max() 求出emp表中sal字段的最大值) 46、select min(sal) from emp; // (函数max() 求出emp表中sal字段的最小值) 47、select avg(sal) from emp; //(avg()求平均薪水); 48、select to_char(avg(sal), '...
  •  本书全面详细地介绍了Oracle Database 11g强大功能,阐述了如何使用所有新增功能和工具,如何执行功能强大SQL查询,如何编写PL/SQL和SQL*Plus语句,如何使用大对象和对象-关系数据库。通过学习本书,您可以...
  • MySQL 5.1参考手册.chm

    2011-12-07 13:53:37
    3.6.2. 拥有某个列的最大值的行 3.6.3. 列的最大值:按组 3.6.4. 拥有某个字段的组间最大值的行 3.6.5. 使用用户变量 3.6.6. 使用外键 3.6.7. 根据两个键搜索 3.6.8. 根据天计算访问量 3.6.9. 使用AUTO_INCREMENT ...
  • 而pDBFat是数据库起始地址,如果pSysHead->dbf_count异常过大,将导致pDBFat超过最大内存地址,随后进行内存操作将导致内存操作越界错误,因而在测试过程中数据库破坏后就出现了主机死机现象。...
  • MySQL中文参考手册

    2010-08-10 22:11:55
    8.3.3 列的最大值:按组:只有值 8.3.4 拥有某个字段的组间最大值的行 8.3.5 使用外键 8.4 创建并使用一个数据库 8.4.1 创建并选用一个数据库 8.4.2 创建一个数据库表 8.4.3 将数据装入数据库表 8.4.4 从一个...
  • 精髓Oralcle讲课笔记

    2013-05-23 16:25:18
    -- (函数max() 求出emp表中sal字段的最大值) 46、select min(sal) from emp; -- (函数max() 求出emp表中sal字段的最小值) 47、select avg(sal) from emp; --(avg()求平均薪水); 48、select to_char(avg(sal),...
  • 3.6.2. 拥有某个列的最大值的行 3.6.3. 列的最大值:按组 3.6.4. 拥有某个字段的组间最大值的行 3.6.5. 使用用户变量 3.6.6. 使用外键 3.6.7. 根据两个键搜索 3.6.8. 根据天计算访问量 3.6.9. 使用AUTO_INCREMENT ...
  • 2009达内SQL学习笔记

    2010-02-10 19:46:58
    如:prod_price="" 这种写法是错(不要受到corejava的影响) prod_price=NULL 这种写法是错(不要受到corejava的影响) prod_price IS NULL 这种写法才是对 NVL:处理空值,把空值转化为指定。可转化为日期、...
  • MYSQL中文手册

    2013-03-11 21:21:34
    3.6.2. 拥有某个列的最大值的行 3.6.3. 列的最大值:按组 3.6.4. 拥有某个字段的组间最大值的行 3.6.5. 使用用户变量 3.6.6. 使用外键 3.6.7. 根据两个键搜索 3.6.8. 根据天计算访问量 3.6.9. 使用AUTO_...
  • 3.6.2. 拥有某个列的最大值的行 3.6.3. 列的最大值:按组 3.6.4. 拥有某个字段的组间最大值的行 3.6.5. 使用用户变量 3.6.6. 使用外键 3.6.7. 根据两个键搜索 3.6.8. 根据天计算访问量 3.6.9. 使用AUTO_...
  • MySQL 5.1参考手册

    2010-04-20 22:02:50
    3.6.2. 拥有某个列的最大值的行 3.6.3. 列的最大值:按组 3.6.4. 拥有某个字段的组间最大值的行 3.6.5. 使用用户变量 3.6.6. 使用外键 3.6.7. 根据两个键搜索 3.6.8. 根据天计算访问量 3.6.9. 使用AUTO_INCREMENT ...

空空如也

空空如也

1 2 3
收藏数 42
精华内容 16
关键字:

java查询char的最大值

java 订阅