Java中Integer和String浅谈
Java中的基本数据类型有八种:int、char、boolean、byte、long、double、float、short。Java作为一种面向对象的编程语言,数据在Java中也是一种对象。我们用基本数据类型创建的对象,如 int x = 0;这里的x只有值这个属性,没有(或者很少)有其他的方法。这在一些需要对数据进行操作时变的很不方便,程序员需要自己编写很多代码去实现一些常用的功能,增加了工作量及程序的大小。
所以,Java中每种基本数据类型都有其对应的引用类,或者叫封装类。如int的引用类为Integer,char 的引用类为Character。这些类是在Java的编译环境中已经事先写好的类,类中已经写有大量的,针对该数据类型的常用的方法,并且这些方法是经过优化的。在编程时,我们只需要用这些类去创建对象,就可以直接调用相应的方法。有利就有弊,在创建这些类的对象时,所用的时间和空间是要比基本数据类型大,这就提高了程序的时间复杂度和空间复杂度,所以在应用时,如果不是十分必要,尽量还是使用基本数据类型。
下面,我主要介绍Integer类中的一些方法的使用。
谈到类,首先要说的就是对象的构造方法。Java中每个类都会有构造方法,用于在创建该类的对象时调用。如方法中没有对构造方法重写,则默认格式为:类名 对象名 = new 类名();重写后则根据所传参数调用对应方法。
Integer类中重写了两种构造方法。第一种为 Integer(int value),传入一个int值作为对象的值,这个方法与语句:Integer 对象名= (int)value等价。这种方法比较好理解,就不再举例。
第二种方法为Integer(String s) 这个方法构造一个Integer
对象,它表示 String
参数所指示的int值。使用与parseInt
方法(对基数为 10 的值)相同的方式将该字符串转换成int值。该方法在检测到异常,即当String s所包含的内容不是数字,或者不可解析的整数时,会抛出一个NumberFormatException。

- );
- );
- );
- ,s.length()-);
- System.out.println("snew is :"+snew);
- System.out.println("str is :"+str);
结果为:snew is :dcidfkasdcieij
str is :dcidfkasdciei
请注意两个子串的区别。
Java中Integer和String浅谈的更多相关文章
- 对kotlin和java中的synchronized的浅谈
synchronized在java中是一个关键字,但是在kotlin中是一个内联函数.假如分别在java和kotlin代码锁住同一个对象,会发生什么呢,今天写了代码试了试.首先定义people类 12 ...
- java中Integer 和String 之间的转换
java中Integer 和String 之间的转换 将数组转换成字符串:char[] array = {'a','b','c','d','e'};String str = new String(ar ...
- Java中的SPI原理浅谈
在面向对象的程序设计中,模块之间交互采用接口编程,通常情况下调用方不需要知道被调用方的内部实现细节,因为一旦涉及到了具体实现,如果需要换一种实现就需要修改代码,这违反了程序设计的"开闭原则& ...
- Java中的容器 I————浅谈Queue和PriorityQueue
一.Queue的实现 通过LinkedList类实现Queue接口来完成对Queue的实例类的实现,代码如下: Queue<Integer> queue=new LinkedList< ...
- Java中常用修饰符浅谈
一.public.protected.default和private修饰符的作用域 public:在java程序中,如果将属性和方法定义为 public 类型,那么此属性和方法所在的类和及其子类,同一 ...
- Java中的容器 I————浅谈List
一.List接口的继承关系 List接口是Collection接口的子接口,而ArrayList和LinkedList以及Vector是其实现类. List的特点是可以将元素维护在特定的序列中,可以再 ...
- .net中对象序列化技术浅谈
.net中对象序列化技术浅谈 2009-03-11 阅读2756评论2 序列化是将对象状态转换为可保持或传输的格式的过程.与序列化相对的是反序列化,它将流转换为对象.这两个过程结合起来,可以轻松地存储 ...
- java中Integer比较需要注意的问题
java中Integer比较需要注意的问题 package com.srie.test; import java.util.HashMap; import java.util.Map; public ...
- Java 中要将 String 类型转化为 int 类型
在 Java 中要将 String 类型转化为 int 类型时,需要使用 Integer 类中的 parseInt() 方法或者 valueOf() 方法进行转换. 例1: 1 2 3 4 5 6 S ...
随机推荐
- 设置思科设备console密码、enable密码、vty登录密码
思科设备各级密码:1) console密码 SW2(config)#line console 0SW2(config-line)#password ciscoSW2(config-line)#log ...
- Go 完整实现版本比较 VersionCompare 函数
[转] http://www.syyong.com/Go/Go-implementation-version-comparison-VersionCompare-function.html Versi ...
- Lock锁子类了解一下
前言 回顾前面: 多线程三分钟就可以入个门了! Thread源码剖析 多线程基础必要知识点!看了学习多线程事半功倍 Java锁机制了解一下 AQS简简单单过一遍 只有光头才能变强! 上一篇已经将Loc ...
- 六星经典CSAPP-笔记(7)加载与链接(上)
六星经典CSAPP-笔记(7)加载与链接 1.对象文件(Object File) 1.1 文件类型 对象文件有三种形式: 可重定位对象文件(Relocatable object file):包含二进制 ...
- MySQL命令行SQL脚本的导入导出小结(数据库的备份与还原)
1.设置环境变量 要想在命令行下各处都能执行mysql命令,必须在系统变量Path中添加mysql的命令所在的目录.例如我安装的是集成PHP环境的mysql,在D盘xampps下,则我需要将" ...
- linux:关于Linux系统中 CPU Memory IO Network的性能监测
我们知道:系统优化是一项复杂.繁琐.长期的工作.通常监测的子系统有以下这些:CPUMemoryIO Network 下面是常用的监测工具 Linux 系统包括很多子系统(包括刚刚介绍的CPU,Memo ...
- Latex 文本编辑技巧
临时取消首行缩进 \noindent 生成随机文本 \usepackage{lipsum} \begin{document} \lipsum \end{document} 多栏模式 \usepacka ...
- MT8127:改变安卓系统权限问题
找到对应的文件: system/extras/su/su.c 在main函数中,开头我们可以看下以下代码: uid_t current_uid = getuid(); if (current_uid ...
- Unity UGUI图文混排(七) -- 下划线
之前更新超链接的时候,忘了搭配实现一个下划线的功能,这篇文章就是来补上这一个功能,时间有点长,一方面没有很好的思路,一方面也没多少时间. 先在网上收集了一下下划线的实现操作,一种是在文本下再创建一个文 ...
- Android简易实战教程--第三十二话《使用Lrucache和NetworkImageView加载图片》
转载本专栏每一篇博客请注明转载出处地址,尊重原创.此博客转载链接地址:小杨的博客 http://blog.csdn.net/qq_32059827/article/details/5279131 ...