1.包装类

byte---java.lang.Byte

char---java.lang.Character

short—java.lang.Short

int---java.lang.Integer

float—java.lang.Float

double-java.lang.Double

long—java.lang.Long

boolean—java.lang.Boolean

2.装箱和拆箱

JDK5.0提供的新特性

装箱:就是把基本数据类型可以直接赋给对应的包装类

拆箱:就是把包装类对象可以直接赋值给所对应的基本数据类型

3.String类

字符串定义:有多个字符组成的序列

特点:

String类是一个final的类,给字符串赋值不能更改。

原理:

字符串会存放在一个字符串池中,当第一次存放字符串时,字符串池会判断当前池中是否已经存在同样的字符串,如果存在直接指向已经存在的字符串内存地址,如果不存在则存放到字符串池中。

String采用的是Unicode国际统一编码,一个字符占两个字节。

在创建字符串对象时,无需通过new关键字,可以直接给String赋值。如

String str = "hello java";
String str=new String(“abc”);
//该句代码创建了两个对象,一个对象是构造方法中的字符串,另个一个则该字符串的副本。

3.字符串相关类

1) java.lang.String: 代表不可变的字符序列。特殊的引用数据类型。

a) String str = "abc";  //最常用

String str2 = new String("abc");

b) 字符串可以使用“+”来连接:String str3 = "abc" + "中国";

也可以用“+”跟其它类型数据进行连接:String str4 = "abc" + 12.345;

c) String类有一个方法length()可以获取它的长度。

String str5 = "salkdf";

str5.length();    // "salkdf".length();

d) 字符串的比较

① == : 比较两个字符串的内存地址。  //用得少

② boolean equals(Object object): 比较的是两个字符串的内容。最常用的方法。

③ boolean equalsIgnoreCase(): 忽略大小写比较两个字符串的内容。

④ int compareTo(String str2): 比较两个字符串的字典顺序。

如果相等,返回0

如果在参数字符串位置之前,返回负数。

如果在参数字符串位置之后,返回正数。

⑤ int compareToIgnoreCase(String str2): 忽略大小写比较两个字符串的字典顺序。

⑥ boolean startsWith(String str): 是否以参数字符串开头

⑦ boolean endsWith(String str): 是否以参数字符串结尾

e) 搜索字符串

① int indexOf(int ch): 搜索指定字符在本串中的索引(从0开始)

② int indexOf(String str): 搜索指定字符串在本串中的索引(从0开始)

③ int lastIndexOf(int ch)

④ int lastIndexOf(String str)

f) 提取子字符串

① char charAt(int index): 提取指定索引处的那个字符。

② String substring(int beginIndex):提取从指定索引处到结尾的子串。

③ String substring(int beginIndex, int endIndex):提取从 beginindex开始直到 endindex(不包括此位置)之间的这部分字符串

④ String concat(String str):跟“+”的功能一样。

⑤ String replace(char oldChar,char newChar):返回一个新的字符串,它是通过用newChar 替换此字符串中出现的所有oldChar而生成的。

⑥ String trim(); 去掉字符串的前后空格。

g) 转大小写

① String toUpperCase(); 转成大写

② String toLowerCase(); 转成小写

h) 其它类型转换成字符串:

static String valueOf(…)可以将基本类型数据、Object类型转换为字符串。

i) 与正则表达式相关的方法:

① String[] split(String regex); 根据给定正则表达式的匹配拆分此字符串

② String replaceAll(String regex, String replacement)使用给定的 replacement 替换此字符串所有匹配给定的正则表达式的子字符串.

③ public boolean matches(String regex)告知此字符串是否匹配给定的正则表达式

4.StringBuffer特点:

1.StringBuffer是一个动态的字符串类,所谓动态即表示修改了字符串实际上修改的是字符串的本身,不会产生新的字符序列。

2.StringBuffer底层实际上是通过一个动态的字符数组实现的。

3.StringBuffer是一个线程安全的类。

4.StringBuilder是JDK5.0以后新增的一个和StringBuffer操作完全一致的类,只不过StringBuilder是一个线程不安全的类。从效率方面而言,StringBuilder效率最高其次StringBuffer,String效率最慢

5.静态导入要使用静态成员(方法和变量)我们必须给出提供这个方法的类。

在JDK5.0中,使用静态导入可以使被导入类的所有静态变量和静态方法在当前类直接可见,使用这些静态成员无需再给出他们的类名。

语法:

import static 包名.类名.*;

Java基础11一常用类的更多相关文章

  1. Java基础——6种常用类讲解

    本文主要介绍几种Java中常用类的应用. 一.System类 从API当中我们可以看出,public final class System exends Object.System类包含一些有用的字段 ...

  2. Java集合框架(常用类) JCF

    Java集合框架(常用类) JCF 为了实现某一目的或功能而预先设计好一系列封装好的具有继承关系或实现关系类的接口: 集合的由来: 特点:元素类型可以不同,集合长度可变,空间不固定: 管理集合类和接口 ...

  3. java基础(11) -JDBC

    java基础(11) -JDBC jdbc 1.装载驱动 载入跟数据库建立连接的驱动 /* sql server: String className ="com.microsoft.sqls ...

  4. Java基础-日期格式化DateFormat类简介

    Java基础-日期格式化DateFormat类简介 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.DateFormat类概述 DateFormat 是日期/时间格式化子类的抽象 ...

  5. Java && Python 算法面试常用类以及方法总结

    数据结构 逻辑结构上: 包括集合,线性结构,非线性结构. 存储结构: 顺序存储,链式存储,索引存储,散列存储. Java 常见数据结构 大专栏  Java && Python 算法面试 ...

  6. JAVA基础语法:常用功能符以及循环结构和分支结构(转载)

    3.JAVA基础语法:常用功能符以及循环结构和分支结构 1.常用功能符 注释 ("文字"是被注释的部分) //文字 单行注释 /文字/ 多行注释 算术运算符 + - * / / 整 ...

  7. JAVA基础知识之IO——Java IO体系及常用类

    Java IO体系 个人觉得可以用"字节流操作类和字符流操作类组成了Java IO体系"来高度概括Java IO体系. 借用几张网络图片来说明(图片来自 http://blog.c ...

  8. 零基础学Java(11)自定义类

    前言   之前的例子中,我们已经编写了一些简单的类.但是,那些类都只包含一个简单的main方法.现在来学习如何编写复杂应用程序所需要的那种主力类.通常这些类没有main方法,却有自己的实例字段和实例方 ...

  9. Java基础语法(自定义类、ArrayList集合)

    Java基础语法 今日内容介绍 u 自定义类 u ArrayList集合 第1章 引用数据类型(类) 1.1 引用数据类型分类 提到引用数据类型(类),其实我们对它并不陌生,如使用过的Scanner类 ...

随机推荐

  1. shell脚本中source无效

    发现在shell里面执行source,提示找不到命令.所以,我取搜了一些资料,总结一下. 一. 脚本中,source找不到命令--------------是因为用了sh执行脚本,而debian系统的s ...

  2. 【Codeforces 350B】Resort

    [链接] 我是链接,点我呀:) [题意] [题解] 我们可以把原图的边都反向一下. 然后以每个休息点作为起点,进行dfs. 每次在扩展节点y的时候,要求这个点y必须只有一个出度,然后就能走多远就走多远 ...

  3. 自己写的php curl库实现整站克隆

    有时候常常会用到一些在线手冊,比方国内或国外的.有些是訪问速度慢,有些是作者直接吧站点关闭了,有些是server总是宕机.所以还是全盘克隆到自己server比較爽.所 已这里给了一个demo < ...

  4. android发送get请求时报错

    异常信息: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.synology.synologycloud/ ...

  5. hdoj 1518 Square 【dfs】

    题意:给出n个(不同长度的)棍子,问能不能将他们构成一个正方形. 策略:深搜. hdoj 1455的简化版 代码: #include <stdio.h> #include <stri ...

  6. Unity3d数据加密

    在unity中能够使用c#自带的对称算法对数据进行加密,以下两种加密算法: using System; using System.Text; using System.Security.Cryptog ...

  7. cocos2dx3.0 结构图

    图片较大.请下载看 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdzE4NzY3MTA0MTgz/font/5a6L5L2T/fontsize/400/f ...

  8. tslib-触摸屏校准

    5.1移植tslib 5.1.1在https://github.com/kergoth/tslib下载最新的tslib 5.1.2为虚拟机里的Linux系统安装工具  sudo apt-get ins ...

  9. POJ2184 Cow Exhibition 背包

    题目大意:已知c[i]...c[n]及f[i]...f[n],现要选出一些i,使得当sum{c[i]}和sum{f[i]}均非负时,sum(c[i]+f[i])的最大值. 以sum(c[i])(c[i ...

  10. 【POI 2007】 山峰和山谷

    [题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=1102 [算法] 广度优先搜索 [代码] #include<bits/stdc+ ...