这篇文章总结了Java中最基础的类以及常用的方法,主要有:Number,Character,String。

1、Number类

在实际开发的过程中,常常会用到需要使用对象而不是内置的数据类型的情形。所以,java语言为每个内置数据类型都提供了对应的包装类。六种内置数据类型:byte, short, int, long, float, double分别对应Number抽象类的子类:Byte,Short,Integer,Long,Float,Double

装箱:把基本类型用它们相应的引用类型包装起来,使其具有对象的性质。例:Integer a = 1;

拆箱:将引用类型的对象简化成内置类型的数据。例:int b = a ;

(1).Number&Math类常用方法

1.XXValue():将Number对象转换为相应的类型

Double num= 1.5;int intNum =num.intValue();2.compareTO():同类型比较,小于参数返回-1,等于参数返回0,大于参数返回13.equals():返回boolen值4.valueOf():返回一个Number对象指定的内置数据类型,参数可以是字符串,字符

Double dou= Double.valueOf('1') 返回49.0Double dou= Double.valueOf(“1”) 返回1.0

5.toString():转换为字符串6.parseXXX():将字符串解析为Number对象

Integer a= Integer.parseInt("123");7.Math.random():返回一个0-1的随机数

2、Character常用方法

1.isLetter()2.isDigit()3.isWhitespace()4.isUpperCase()5.isLowerCase()6.toUpperCase()7.toLowerCase()8.toString()1-7方法参数为操作的Character实列对象,由Character类调用;方法7由实例对象调用。

3、String类

String对象一旦创建就无法修改,如果对字符修改可以使用StringBuffer类或StringBuider类。StringBuilder类有速度优势,StringBuffer类是线程安全的。

(1)String常用方法

1.charAt():返回指定索引处的字符串2.compareTo():比较字符串,返回第一个不相等字符的ASCII差值,如果字符都相等,则返回字符串长度差值3.copyValueOf(char[],offset,count):参数是一个数组,返回的是一个String对象,将数组中的元素考到一个String对象中;getChars()方法正好与之相反,将特定位置的字符串,变为数组。

String b= "aghvjhg";char[] a = new char[12];

b.getChars(0,4,a,0);a = [a,g,h,v,(int)0,....]

String c= String.copyValueOf(a,0,3);c = "agh"

4.endsWith(),startWith():判断字符串是否以指定的字符串结尾或是开头5.equals():判断字符串是否相等6.getBytes():将字符串以指定字符集编码为byte序列,将结果存储到一个新的Byte数组中7.getChars():将字符串复制到指定的数组中8.indexOf():返回指定字符第一次出现的索引;lastIndexOf():从后向前查找9.length()10.matches():判断字符串是否匹配给定的正则表达式11.reginMatches(int offset,String str,int offset,intlen)判断指定区域的字符串是否相等12.replace(),replaceAll(),replaceFirst()后两种方法参数可以是正则表达式13.split():切分字符串14.subString():返回子字符串15.trim():忽略前导和尾部空白16.toString()

(2)StringBuffer主要方法

1.增

append():在目标字符串后追加字符串

insert():将字符串插入到指定的位置2.删

delete():删除指定的字符串3.改

replace():替换字符串4.反转

reverse():反转字符串

(3)String,StringBuffer和StringBuilder的区别

String:字符串常量,字符串长度不可变。在java底层中,String是char数组构成的,并且被声明为final类型。

StringBuffer:字符串变量(Synchronized,即线程安全)。如果要频繁对字符串内容进行修改,出于效率考虑最好使用 StringBuffer,如果想转成 String 类型,可以调用 StringBuffer 的 toString() 方法。Java.lang.StringBuffer 线程安全的可变字符序列。在任意时间点上它都包含某种特定的字符序列,但通过某些方法调用可以改变该序列的长度和内容。可将字符串缓冲区安全地用于多个线程。

StringBuilder:字符串变量(非线程安全)。在内部 StringBuilder 对象被当作是一个包含字符序列的变长数组。

使用原则:

1.如果操作少量的数据用String

2.单线程操作大量数据用StringBuilder

3.多线程操作大量数据用StringBuffer

java number string_java基础系列(一):Number,Character和String类及操作相关推荐

  1. Java基础系列24-常用api之String类

    文章目录 一.String类概述 二.String类案例 2.1 String类4种常用构造方法 2.2 String类创建对象两种方式 2.3 String类练习之模拟用户登录 2.4 String ...

  2. Java面试题基础系列

    Java面试题基础系列 1.面向对象的特征有哪些方面? 面向对象的特征主要有以下几个方面:抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪些属性和 ...

  3. java 百分比相加_2019年Java面试题基础系列228道(5),快看看哪些你还不会?

    2019年Java面试题基础系列228道 Java面试题(一) 第一篇更新1~20题的答案解析 第二篇更新21~50题答案解析 第三篇更新51~95题答案解析 Java面试题(二) 第四篇更新1~20 ...

  4. 夯实Java基础系列9:深入理解Class类和Object类

    本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial 喜欢的话麻烦点下 ...

  5. 2022年Java面试题基础系列228道(1),快看看哪些你还不会?

    Java面试题(一) 1.面向对象的特征有哪些方面? 2.访问修饰符 public,private,protected,以及不写(默认)时的区别? 3.String 是最基本的数据类型吗? 4.flo ...

  6. Java面试题基础系列228道(1),快看看哪些你还不会?

    Java面试题(一) 1.面向对象的特征有哪些方面? 2.访问修饰符 public,private,protected,以及不写(默认)时的区别? 3.String 是最基本的数据类型吗? 4.flo ...

  7. java并发编程基础系列(五): 创建线程的四种方式

    线程的创建一共有四种方式: 继承于Thread类,重写run()方法: 实现Runable接口,实现里面的run()方法: 使用 FutureTask 实现有返回结果的线程 使用ExecutorSer ...

  8. Java面试题基础系列228道(2),查漏补缺

    上一篇更新1~20题的答案解析 本次更新Java 面试题(一)的21~50题答案 21.描述一下 JVM 加载 class 文件的原理机制? JVM 中类的装载是由类加载器(ClassLoader)和 ...

  9. java程序语言228_2019年Java面试题基础系列228道(5)

    21.存在两个类,B 继承 A,C 继承 B,我们能将 B 转换为C 么?如 C = (C) B: 这属于强制类型转换,如果被转换的B实例不是C类型,会有异常 比如你的ABC分别对应动物,猫,黑猫. ...

最新文章

  1. BERT中的黑暗秘密
  2. 计算机本科211调剂到双非值得吗,经验分享:从双非到211,调剂是场快准狠的战役...
  3. Web应用系统中数据传递的方式汇总
  4. Hibernate 连接不同数据库的方言
  5. Python中流程控制-for循环(序列/字典举例)
  6. 数字形式转换,输入0123456789对应输出“一二三四五六七八九”
  7. bzoj4011落忆枫音
  8. 2019 全年中国马拉松赛事日历表
  9. VB打造QQ批量登陆器
  10. Pop!_OS安装与配置(三):系统美化
  11. 1399元千元真旗舰,360手机N5“能耐”在哪?
  12. 【JavaSE】入门概述(1~41)
  13. C语言绘制象棋棋盘/残局
  14. 2016版excel_有win10系统excel打开慢的问题来看
  15. VM虚拟机中如何设置ip地址
  16. 【结对编程】随机小学数学题测试
  17. 爬虫实战入门级教学(数据爬取->数据分析->数据存储)
  18. Java学习第二周总结
  19. 生鲜电商迎巨变?美菜撤出县城,有菜被集团关停
  20. oracle表连接分析

热门文章

  1. node:爬虫爬取网页图片
  2. nginx搭建基于http协议的视频点播服务器
  3. 条款46:需要类型转换的时候请为模板定义非成员函数
  4. LINUX下SYN***战
  5. jdk重启后步行_向后介绍步行以一种新颖的方式来预测未来
  6. leetcode1090. 受标签影响的最大值(贪心算法)
  7. leetcode120. 三角形最小路径和(动态规划)
  8. table偏见和HTML仇外心理
  9. rss 阅读源_如何使用RSS更有效地阅读
  10. 西格尔零点猜想_我从埃里克·西格尔学到的东西