Integer转换为String类型

在学习泛型时,遇到了一个小问题:

  Integer i = 2;
  String s = (String) i;

  Integer类型转换为String类型,本来想直接用强制转换,结果报错:

  Exception in thread "main" java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String

  经过搜索资料后发现,这样的转换只能通过以下方式进行:

   Integer i = 2;
  String s = i.toString();

  这里给出一个稍微复杂点的代码,这个例子是Oracle官方解释泛型与不使用泛型的优势的一个例子,关于泛型的更具体的解释我可能会在之后的某个时间重新写一篇。

package graph;

import java.util.*;

public class JustTest {
	public static void main (String[] args) {
		ObjectContainer myObj = new ObjectContainer();
		//store a string
		myObj.setObj("Test");
		System.out.println("Value of myObj:" + myObj.getObj());
		//store an int (which is autoboxed to an Integer object)
		myObj.setObj(3);
		System.out.println("Value of myObj:" + myObj.getObj());

		List objectList = new ArrayList(); // 不指定类型时,默认使用原始类型 Object
		objectList.add(myObj);
		//We have to cast and must cast the correct type to avoid ClassCastException!
		//String myStr = (String)((ObjectContainer)objectList.get(0)).getObj(); // 运行时这里报错
		String myStr = ((ObjectContainer)objectList.get(0)).getObj().toString();
		System.out.println(myStr);
	}
}

class ObjectContainer {
    private Object obj;

    public Object getObj() {
        return obj;
    }

    public void setObj(Object obj) {
        this.obj = obj;
    }

}

  

时间: 2024-10-08 18:16:44

Integer转换为String类型的相关文章

Object类型转换为String类型

1. Object.toString() 1 obj.toString() 注意:必须保证Object不是null值,否则将抛出NullPointerException异常. 2. (String)Object 1 2 Object o = new Integer(100); String string = (String)o; 需要转换的类型必须是能够转换为String的,否则会出现CalssCastException异常错误. 3. String.valueOf(Object) 在使用Str

float类型如何转换为string类型

在一些很大的float类型的地方会用科学记数法表示,这个时候如果想完整记录下来,还是得转字符串,这里书写一个float类型转string类型的方法 <?php function float_to_string($float=0) { if(stripos($float, "e")!==false) { $tmp = explode("e",strtolower($float)); $float=bcmul($tmp[0], bcpow(10, $tmp[1])

java中Integer 与 String 类型的 相互 转换

Integer 转 String 第一种方法: Integer  i =4; String  s =" "; String num = i+s; 第二种方法: String num =String.valueOf(i); String 转 Integer String ss=""; Integer num =Integer.parseInt(ss); Integer num =Integer.valueOf(ss).intValue();

C++ 数字转换为string类型

经常需要循环读入多组序号的图像,需要将int转换为string,简单的函数代码如下: #include <sstream>#include <string> string IntToString(int num) { stringstream ss; string s; ss << num; ss >> s; return s; }

PTA L1-042 日期格式化(将字符数组转换为string类型)

原题 主要通过这题介绍 C++ 中如何将字符数组与字符串的相互转换 参考博客 字符数组转字符串: char a[1000]; string s(&a[i],&a[j]);//i为要转化的其实位置,j为末尾位置加一 字符串转字符数组 #include<bits/stdc++.h> using namespace std; char a[15]; int main() { string s; cin>>s; strncpy(a,s.c_str(),s.length()+

C++中将string类型转换为int, float, double类型 主要通过以下几种方式:

# 方法一: 使用stringstream stringstream在int或float类型转换为string类型的方法中已经介绍过, 这里也能用作将string类型转换为常用的数值类型. Demo: [cpp] view plaincopy #include <iostream> #include <sstream>    //使用stringstream需要引入这个头文件 using namespace std; //模板函数:将string类型变量转换为常用的数值类型(此方法

java中Object转换成int或String类型方法

转载: http://www.cnblogs.com/1020182600HENG/p/6137206.html Object obj = getObject(); if(obj instanceof Integer) int value = (Integer)obj; 1 String转换为int类型的方法: 1. Integer.parseInt([String]) 2.Integer.valueOf([String]).intValue(); 3.Integer.decode([Strin

java对象转换String类型的三种方法

在很多情况下我们都需要将一个对象转换为String类型.一般来说有三种方法可以实现:Object.toString().(String)Object.String.valueOf(Object).下面对这三种方法一一分析 一.采用Object.toString()toString方法是java.lang.Object对象的一个public方法.在java中任何对象都会继承Object对象,所以一般来说任何对象都可以调用toString这个方法.这是采用该种方法时,常派生类会覆盖Object里的t

开发实战细节之——关于整型转换为字符串类型的性能与实现分析

细节决定成败,开发中往往从一些细节就可以看出一个程序员的开发水准,下面我就给大家分享一下开发中最最常见的int转换为String类型的方法及其性能解析. 一般大家最常用的方法有 方法一:String s1 = String.valueOf(i); 方法二:String s2 = i+""; 不知道有没有人用这种方法呢? 方法三:String s3 = Integer.toString(i); 继续往下看之前,大家先猜测一下这三种方法哪种方法的效率最高,耗时最短,且不耗内存?相信结果会令