热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Java常用类及其方法(四)_Integer

本期知识点:Integer类的常用方法类IntegerInteger类在对象中包装了一个基本类型int的值。Integer类型的对象包含一个int类型的字段。为了对基本数
本期知识点:
Integer类的常用方法

类 Integer

Integer 类在对象中包装了一个基本类型 int 的值。Integer 类型的对象包含一个 int 类型的字段。

为了对基本数据类型进行更多的操作以及运算,所以Java针对这种情况:就提供了基本的数据类型包装类类型。
byte       ———— Byte
short      ———— Short
int          ———— Integer
long       ———— Long
float       ———— Float
double   ———— Double
boolean ———— Boolean
char       ———— Character

1. Integer类的构造方法

public Integer(int value) 构造一个新分配的 Integer 对象,它表示指定的 int 值。
public Integer(String s) 构造一个新分配 Integer 对象,它表示 String 参数所指示的 int 值。
注意:一个异常,String类型的值必须使用数字,否则会出现throw NumberFormateException数字格式化异常
例:
public class Integer类的构造方法 {
public static void main(String[] args) {
//定义一个int类型的变量;
int a = 100;
//使用Integer构造方法创建对象。
Integer b = new Integer(a);
System.out.println("b:"+b);//b:100
//构造一个新分配的 Integer 对象,它表示 String 参数所指示的 int 值
Integer c = new Integer("123");
//Integer d = new Integer("asd");
// NumberFormatException 数字格式化异常。
System.out.println("c:"+c);//c:123
//System.out.println("d:"+d);
}
}


2. int和String相互转换

a. int——String:
i. 方法1:字符串拼接;
ii. 方法2:int--->Integer--->String
iii. 方法3:利用toString方法, public static Sring toString(int i)返回一个表示指定的整数的String。
b. String——int:
i. 方法1:String--->Integer--->int
ii. 方法2:利用Integer类中的方法, public static int parseInt(String)
例:
public class int类型和String类型相互转换 {
public static void main(String[] args) {
//int--->String;
//定义一个变量
int i = 100;

//方式 1,字符串拼接
String s = ""+i;
System.out.println(s);//100
System.out.println("——————");

//方式2,int -->Integer-->String;
Integer a = new Integer(i);
String c = a.toString();
System.out.println(c);//100
System.out.println("——————");

//方式3 public static String toString(int i) 返回一个表示指定的整数的String
String d = Integer.toString(i);
System.out.println(d);//100
System.out.println("——————");


//String --->int
//定义一个字符串:
String ii = "101";
//方式1 String--->Integer--->int;
Integer e = new Integer(ii);
int f = e.intValue();
System.out.println(f);//101
System.out.println("——————");

//方式2 Integer 类中的方法;public static int parseInt(String s)
int g =Integer.parseInt(ii);
System.out.println(g);//101
}
}


3. Integer的方法—进制转化

a. 十进制可以转换其他机制:二进制,8进制,16进制

public static String toBinaryString(int i):二进制
public static String toOctalString(int i):八进制

public static String toHexString(int i):十六进制


b. 十进制转换成其他进制

public static String toString(int i, int radix)


c. 其他进制转换10进制String s (s必须是数字字符串)

public static Integer valueOf(String s, int radix)
例:
public class 进制转换方法 {
public static void main(String[] args) {
System.out.println("100的二进制:"+Integer.toBinaryString(100));
System.out.println("100的八进制:"+Integer.toOctalString(100));
System.out.println("100的十六进制:"+Integer.toHexString(100));
System.out.println("——————————");

//十进制转换成其他进制
//public static String toString(int i, int radix)
System.out.println(Integer.toString(10, 2));
System.out.println(Integer.toString(15, 3));
System.out.println(Integer.toString(20, 6));
System.out.println("——————————");

//把其他进制的数转换成十进制
System.out.println(Integer.valueOf("100", 2));
System.out.println(Integer.valueOf("100", 8));

}
}


4. 常用的一个特性

JDK5.0以后:对于包装类有一个自动装箱和自动拆箱的功能
public static void main(String[] args) {
//定义一个Integer类型
//Integer i = new Integer(100) ;
Integer i = 100 ;//自动装箱:int类型--->封装了Integer类型
i+= 200 ;//i = i + 200 ;先是拆箱,将Integer转换int类型,做一个求和,完了又封装成Integer类型
System.out.println("i:"+i);

/**
* 通过反编译工具看原码:
* Integer i = Integer.valueOf(100); //自动装箱
i = Integer.valueOf(i.intValue() + 200);//括号内先拆箱:转换int,求和;括号外边:将int类型--->Integer类型:自动装箱
System.out.println((new StringBuilder("i:")).append(i).toString());
*
* */

5.BigInteger

public BigInteger add(BigInteger val)
public BigInteger subtract(BigInteger val)
public BigInteger multiply(BigInteger val)
public BigInteger divide(BigInteger val)可以让超出Integer类型的范围的数据进行计算

import java.math.BigInteger;
public class BigIntegerDemo {
public static void main(String[] args) {
//创建Integer对象
//Integer i = new Integer(100) ;
//System.out.println(i);
//获取Integer类型的最大值
System.out.println(Integer.MAX_VALUE);//2147483647

//Integer类型的构造方式:Integer(String str)
//java.lang.NumberFormatException:数字格式异常
//Integer i = new Integer("2147483648") ;
//System.out.println(i);

//java提供了:BigInteger
BigInteger bi = new BigInteger("2147483648") ;
System.out.println("bi:"+bi);
}

6.BigInteger的构造方法和常用的方法

public BigInteger(String val:数字字符串)
public BigInteger add(BigInteger val) public BigInteger subtract(BigInteger val) public BigInteger multiply(BigInteger val) public BigInteger divide(BigInteger val)
public class BigIntegerDemo2 {
public static void main(String[] args) {
//创建两个BigInteger对象
BigInteger bi1 = new BigInteger("100") ;
BigInteger bi2 = new BigInteger("50") ;

//public BigInteger add(BigInteger val)
System.out.println("add:"+bi1.add(bi2));

//public BigInteger subtract(BigInteger val)
System.out.println("subtract:"+bi1.subtract(bi2));

//public BigInteger multiply(BigInteger val)
System.out.println("subtract:"+bi1.multiply(bi2));

//public BigInteger divide(BigInteger val)
System.out.println("divide:"+bi1.divide(bi2));

//public BigInteger[] divideAndRemainder(BigInteger val):返回的是商和余数
BigInteger[] bis = bi1.divideAndRemainder(bi2);
System.out.println("商为:"+bis[0]);
System.out.println("余数:"+bis[1]);


}
}



推荐阅读
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • 本文介绍了闭包的定义和运转机制,重点解释了闭包如何能够接触外部函数的作用域中的变量。通过词法作用域的查找规则,闭包可以访问外部函数的作用域。同时还提到了闭包的作用和影响。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • 本文介绍了C#中生成随机数的三种方法,并分析了其中存在的问题。首先介绍了使用Random类生成随机数的默认方法,但在高并发情况下可能会出现重复的情况。接着通过循环生成了一系列随机数,进一步突显了这个问题。文章指出,随机数生成在任何编程语言中都是必备的功能,但Random类生成的随机数并不可靠。最后,提出了需要寻找其他可靠的随机数生成方法的建议。 ... [详细]
  • 原文地址:https:www.cnblogs.combaoyipSpringBoot_YML.html1.在springboot中,有两种配置文件,一种 ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • C++字符字符串处理及字符集编码方案
    本文介绍了C++中字符字符串处理的问题,并详细解释了字符集编码方案,包括UNICODE、Windows apps采用的UTF-16编码、ASCII、SBCS和DBCS编码方案。同时说明了ANSI C标准和Windows中的字符/字符串数据类型实现。文章还提到了在编译时需要定义UNICODE宏以支持unicode编码,否则将使用windows code page编译。最后,给出了相关的头文件和数据类型定义。 ... [详细]
  • 先看官方文档TheJavaTutorialshavebeenwrittenforJDK8.Examplesandpracticesdescribedinthispagedontta ... [详细]
  • Python爬虫中使用正则表达式的方法和注意事项
    本文介绍了在Python爬虫中使用正则表达式的方法和注意事项。首先解释了爬虫的四个主要步骤,并强调了正则表达式在数据处理中的重要性。然后详细介绍了正则表达式的概念和用法,包括检索、替换和过滤文本的功能。同时提到了re模块是Python内置的用于处理正则表达式的模块,并给出了使用正则表达式时需要注意的特殊字符转义和原始字符串的用法。通过本文的学习,读者可以掌握在Python爬虫中使用正则表达式的技巧和方法。 ... [详细]
  • 纠正网上的错误:自定义一个类叫java.lang.System/String的方法
    本文纠正了网上关于自定义一个类叫java.lang.System/String的错误答案,并详细解释了为什么这种方法是错误的。作者指出,虽然双亲委托机制确实可以阻止自定义的System类被加载,但通过自定义一个特殊的类加载器,可以绕过双亲委托机制,达到自定义System类的目的。作者呼吁读者对网上的内容持怀疑态度,并带着问题来阅读文章。 ... [详细]
  • 本文详细介绍了Spring的JdbcTemplate的使用方法,包括执行存储过程、存储函数的call()方法,执行任何SQL语句的execute()方法,单个更新和批量更新的update()和batchUpdate()方法,以及单查和列表查询的query()和queryForXXX()方法。提供了经过测试的API供使用。 ... [详细]
  • 本文介绍了UVALive6575题目Odd and Even Zeroes的解法,使用了数位dp和找规律的方法。阶乘的定义和性质被介绍,并给出了一些例子。其中,部分阶乘的尾零个数为奇数,部分为偶数。 ... [详细]
  • Java中包装类的设计原因以及操作方法
    本文主要介绍了Java中设计包装类的原因以及操作方法。在Java中,除了对象类型,还有八大基本类型,为了将基本类型转换成对象,Java引入了包装类。文章通过介绍包装类的定义和实现,解答了为什么需要包装类的问题,并提供了简单易用的操作方法。通过本文的学习,读者可以更好地理解和应用Java中的包装类。 ... [详细]
  • Java SE从入门到放弃(三)的逻辑运算符详解
    本文详细介绍了Java SE中的逻辑运算符,包括逻辑运算符的操作和运算结果,以及与运算符的不同之处。通过代码演示,展示了逻辑运算符的使用方法和注意事项。文章以Java SE从入门到放弃(三)为背景,对逻辑运算符进行了深入的解析。 ... [详细]
author-avatar
欢迎bm访问老年人空间
这个家伙很懒,什么也没留下!
Tags | 热门标签
RankList | 热门文章
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有