刚学Java,求解决!!!

人月神话 发布于 2013/08/14 15:52
阅读 595
收藏 1
package util;

import java.util.ArrayList;
import java.util.List;

public class GenericList {
		public static void main(String[] args) {
			List<String> list = new ArrayList<String>();
			
			int element = 5;
			//TODO 编写代码,不能使用任意类型转换,将element添加到list中,使下面的输出为true,
			System.out.println(list.toString().equals("[5]"));
		}
}
怎么实现!!!
加载中
0
vvtf
vvtf

因为list是集合,如果不重写toString方法输出应该是这样的:

[item,item,item,...,item]

所有就把5放进去就行了。

这里说不使用任何类型转换,不知道下面这种算不:

list.add(element + "");

我已经报警了
我已经报警了
这是错误的答案,使用类型转换的话,就成String了
0
情天大圣
情天大圣
public static void main(String[] args) {
        List<String> list = new ArrayList<String>();
        
        int element = 5;
        //TODO 编写代码,不能使用任意类型转换,将element添加到list中,使下面的输出为true,
        list.add("" + element);
        System.out.println(list.toString().equals("[5]"));
    }
情天大圣
情天大圣
回复 @我已经报警了 : 那我mark下,坐等正确的
我已经报警了
我已经报警了
这样是不行的…
伊藤熊吉
伊藤熊吉
回复 @情天大圣 : 这个应该是对的,+不叫类型转换,叫 连接字符串 虽然会自动类型转换,但是不应该算在类型转换里
情天大圣
情天大圣
这样不行么?
0
g
gebagong

Integer.toString算类型转换么?

情天大圣
情天大圣
肯定算
0
g
gebagong
显式隐式都算?
0
娃娃也郁闷
list.add("" + element)
0
jonneyQ
jonneyQ

StringBuilder builder = new StringBuilder();

builder.append(element);

list.add(builder.toString());



g
gebagong
这个还真没用类型转换,append里头用的是Integer.getChars方法
0
八木
八木
list.add(""+ element);我感觉就得这样吧,虽说也是转换了。。。。。
0
我已经报警了
我已经报警了
package util;

import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;

public class GenericList {
		public static void main(String[] args) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException, NoSuchMethodException, SecurityException {
			List<String> list = new ArrayList<String>();
			
			int element = 5;
			//TODO 编写代码,将element添加到list中,使下面的输出为true
			
			list.getClass().getMethod("add", Object.class).invoke(list, element);
			
			System.out.println(list.toString().equals("[5]"));
		}
}
@ 情天大圣
jonneyQ
jonneyQ
回复 @gebagong : 我觉得也是这个了
g
gebagong
尽管还有一个哥们也没用到类型转换,但我觉得标准答案应该就是这个了
0
c
coldhearted

直接list.add(element);

因为你后面用到的是list.toString()放回类型就是String那么和"[5]"是相等滴

我已经报警了
我已经报警了
String list add int就直接报错了,编译不过
0
专业打酱油
专业打酱油

起码int要转换成Integer,如果这个不算类型转换的话。


返回顶部
顶部