Java SE核心之一:常用类,包装类,其他基本数据类型包装类。
在Java继承体系中,java.lang.Object类位于顶端(是所有对象的直接或间接父类)。如果一个类没有写extends关键字声明其父类,则该类默认继承java.lang.Object类。Object类定义了“对象”的基本行为,被子类默认继承。
1.Number 类
Number数值类型是byte、double、float、int、long 和 short类的抽象父类,提供把包装类转化成基本数据类型的方法(xxxValue)。
详细请查阅JDK API 及以上文档:

1.2 Interger 是int基本数据类型的包装类,在Interger内部封装了一个final int value 的属性。

1) 构造方法
 public class Test1 {
     public static void main(String[] args) {
         // Integer 属性
         //System.out.println(Integer.MAX_VALUE); 输出2^31 - 1;
         //System.out.println(Integer.MIN_VALUE); 输出-2^31;
         // 构造方法
         int t = 10;
         String bStr = "20";
         Integer t1 = new Integer(t);
         //可能抛出NumberFormatException异常
         Integer t2 = new Integer(bStr);
         System.out.println(t1.toString());
         System.out.println(t2.toString());
     }
 }
2)int<->Integer<->string类型之间转换
 public class Test2 {
     public static void main(String[] args) {
         // int -> Integer
         Integer i1 = new Integer(10);
         Integer i2 = Integer.valueOf(20);
         // Integer -> int
         int a = i1.intValue();
         // String -> Integer
         Integer i3 = new Integer("30");
         Integer i4 = Integer.valueOf("40");
         // Integer -> String
         System.out.println(i3.toString());
         // String -> int
         int b = Integer.parseInt("50");
         System.out.println(b);
         //int -> String
         String str = Integer.toString(10);
         String str2 = Integer.toString(8,2);//将8转化为二进制数
         System.out.println(str2); //输出二进制 1000;
     }
 }
3)Comparable接口
查看JDK API文档我们发现对Comparable定义如下:

Comparable 表示具有比较能力,对象可比较大小,还可以强行对实现它的每个类的对象进行整体排序。这种排序被称为类的自然排序,类的 compareTo 方法被称为它的自然比较方法。实现此接口的对象列表(和数组)可以通过 Collections.sort(和 Arrays.sort)进行自动排序。实现此接口的对象可以用作有序映射中的键或有序集合中的元素,无需指定比较器。
 public class Test3 {
     public static void main(String[] args) {
         Integer i1 = new Integer(10);//把包装类转化基本数据类型
         int a=i1.intValue();
         System.out.println(a);
         //(2)Integer的比较
         Integer i2 = new Integer(20);
         Integer i3 = new Integer(30);
         //equals是对象内容进行比较。
         System.out.println(i2.equals(i3));//输出false ,i2和i3的内容不想相等。
         /*compareTo(), 在JDK API中,java.lang包下面的基本数据类型的封装类都提供了该方法,如 Integer,Float,Byte,Short,Character 等。
         比较此对象与指定对象的顺序。如果该对象小于、等于或大于指定对象,则分别返回负整数、零或正整数。*/
         System.out.println(i2.compareTo(i3));//输出-1,说明该对象i2 小于 指定对象i3;
     }
 }
2. String类
1)String是字符串类型,是引用类型,是“不可变”字符串(内部声明一个private final char value[];),无线程安全问题。在java.lang.String中。
 public class Test1 {
     public static void main(String[] args) {
         String str1 = "abc";
         String str2 = "abc";
         String Str3 = "abcd";
         //比较str1与str2的内存地址是否相等?
         System.out.println(str1 == str2);//输出true;相等!
     }
 }
因为String对象是不可变的,所以可以共享。 通过字面量创建的字符串分配在常量区。

3. 字符串常用方法
1)构造方法
import java.io.UnsupportedEncodingException;
import java.nio.charset.Charset; public class Test2 {
public static void main(String[] args) {
//在堆区初始化一个空字符串
String str1 = new String(); //通过一个字节数组构建一个字符串
byte[] bytes = {97,98,99};
//通过使用平台的默认字符集解码指定的byte 数组
//System.out.println(Charset.defaultCharset()); //输出GBK ,不同平台的默认字符集解码不同的。GBK是在Windows简体中文平台下的字符解码;
String str2 = new String(bytes);
System.out.println(str2); byte[] byte2 = {-42,-48};
String str3 = null;
try {
//使用指定的字符集对字节序列进行解码
str3 = new String(byte2,"GBK");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
System.out.println(str3); //对一个UTF-8的字节序列进行解码
byte[] byte3 = {-28,-72,-83,-28,-72,-83}; try {
String str4 = new String(byte3,"UTF-8");//输出中中
String str5 = new String(byte3,0,3,"UTF-8");//输出中,是0-3位的数;
System.out.println("str4:"+ str4);
System.out.println("str4:"+ str5);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} } }
Java SE核心之一:常用类,包装类,其他基本数据类型包装类。的更多相关文章
- JAVA基础--常用类 String,StringBuffer, 基础数据类型包装类, Math类, Enum类
		字符串相关类: String, StringBuffer String类为不可变的字符序列 String s1="hello"; String s2="hello&quo ... 
- Java SE 核心 I
		Java SE 核心 I 1.Object类 在 Java 继承体系中,java.lang.Object 类位于顶端(是所有对象的直接或间接父类).如果一个类没有写 extends 关键字声明其父类, ... 
- Java SE 基础:常用关键字
		Java SE 基础:常用关键字 常用关键字表 
- Java集合框架(常用类) JCF
		Java集合框架(常用类) JCF 为了实现某一目的或功能而预先设计好一系列封装好的具有继承关系或实现关系类的接口: 集合的由来: 特点:元素类型可以不同,集合长度可变,空间不固定: 管理集合类和接口 ... 
- Java SE 之 数据库操作工具类(DBUtil)设计
		JDBC创建数据库基本连接 //1.加载驱动程序 Class.forName(driveName); //2.获得数据库连接 Connection connection = DriverManager ... 
- Java && Python 算法面试常用类以及方法总结
		数据结构 逻辑结构上: 包括集合,线性结构,非线性结构. 存储结构: 顺序存储,链式存储,索引存储,散列存储. Java 常见数据结构 大专栏 Java && Python 算法面试 ... 
- java中循环遍历实体类的属性和数据类型以及属性值
		package com.walkerjava.test; import java.lang.reflect.Field; import java.lang.reflect.InvocationTarg ... 
- java中如何遍历实体类的属性和数据类型以及属性值
		package com.walkerjava.test; import java.lang.reflect.Field; import java.lang.reflect.InvocationTa ... 
- Java基础——常用类(Date、File)以及包装类
		本文要点: 基本数据类型的包装类 字符串相关类: 不可变字符序列:String 可变字符序列:StringBuffer.StringBuilder 时间处理相关类: Date DateFormat.S ... 
随机推荐
- js方法用来获取路径传参上所带的参数
			//js方法用来获取路径传参上所带的参数 function GetQueryString(param) { var reg = new RegExp("(^|&)" + p ... 
- Beta冲刺——第四天
			beat冲刺:第四天 各个成员今日完成的任务 成员 冯晓.马思远 彭辉.王爽 吴琼.郝延婷 今日完成任务 ·管理员功能模块的代码规范与测试 ·后台审稿系统代码规范 ·代码规范 ·系统审稿模块功能测试 ... 
- html迪士尼网页实现代码
			html body> <div> <!-- 导航设置 --> <header> <nav ... 
- 云笔记项目-AOP知识简单学习
			在云笔记项目的过程中,需要检查各个业务层的执行快慢,如登录.注册.展示笔记本列表,展示笔记列表等,如果在每个业务层方法里都写一段代码用来检查时间并打印,不仅仅显得代码重复,而且当项目很大的时候,将大大 ... 
- Zabbix告警脚本-微信
			1.weixin.sh [root@iot-svndata02 bin]# cat weixin.sh #!/bin/bash ###SCRIPT_NAME:weixin.sh### ###send ... 
- 245. Shortest Word Distance III 单词可以重复的最短单词距离
			[抄题]: Given a list of words and two words word1 and word2, return the shortest distance between thes ... 
- 加NONCLUSTERED INDEX索引,在ON了之后还要INCLUDE
			之前加了索引,但效果不大 SET STATISTICS TIME ON --执行时间 SET STATISTICS IO ON --IO读取 DBCC DROPCLEANBUFFERS --清除缓冲区 ... 
- vue 总结
			VUE总结 双花括号{{}} 01.index.hmlt main.js 内存的数据可以更改 v-model 双休数据绑定 代码: <!DOCTYPE html> <html lan ... 
- MySQL开发——【多表关系、引擎、外键、三范式】
			多表关系 一对一关系 一对多或多对一关系 多对多关系 MySQL引擎 所谓的MySQL引擎就是数据的存储方式,常用的数据库引擎有以下几种: Myisam与InnoDB引擎之间的区别(面试) ①批量插入 ... 
- Python3,x:Fiddler抓包工具如何进行手机APP的数据爬取
			示例一:苹果手机抓取教程 https://www.cnblogs.com/lizm166/p/8693085.html https://blog.csdn.net/cui130/article/det ... 
