java-Java 字符串确认泛型类型

问题描述

Java 字符串确认泛型类型

原来是这样的:Map aaa = new HashMap();
现在是这样的:
String type = "String";
Map aaa = new HashMap();

问题是:
do_something(type)这个东西怎么写,以及返回什么类型?

解决方案

完全看不懂问题是要做什么

解决方案二:

这跟泛型有什么关系?方法的返回值看需要什么就可以返回什么啊。跟Map也没什么关系,问题说的不够清楚。

解决方案三:

定义泛型方法或者泛型类格式是固定的,跟其它无关。不会因为你输入的是啥而改变它的定义格式:

泛型方法:

        public <T> T do_something(T t){
            return t;//返回值也是泛型
        }

        public <T> String do_something(T t, int num){
            return "";//返回值是字符串
        }

泛型类:

     public class Test<T> {

    }

如果你想通过字符串type的内容来限制输入类型的话,你可以通过反射获取type字符串对应的类型,跟我们传到方法中的类型相比对,
一致的话就说明是我们type允许传入的类型,不一致的话,就说明不是我们允许传入的值。

解决方案四:

问题问的不好。前后不搭
首先 那个Map干什么用的。

如果说是泛型本身使用的疑问我来解答下:
1--重点泛型不改变继承层次,它完全是一个占位符
所以你写 Map aaa = new HashMap();是完全可以的
2--泛型只是约束你使用它进行取值的时候。
也就是你具体给容器传入什么样的参数,得到什么样的值
3--对于返回值和参数处可以不考虑泛型

时间: 2024-12-20 22:02:47

java-Java 字符串确认泛型类型的相关文章

java中字符串处理问题

问题描述 java中字符串处理问题 在一个txt文件中,有几行字符串,每行的格式如下, abc1110011110102 abc123001111010a 根据条件做字符串的转换,条件: 1.字符串以abc开头 2.字符串中包含字串001111 3.在字串001111之后的第二个非0字符串如果是数字的话改变成0,如果不是数字不改变 因此,上面给出的两个字符串结果为 abc1110011110100 abc123001111010a 解决方案 public static void main(Str

java截取字符串的一些常用处理

java对字符串处理功能强大,以下是本人实际开发中用到的一些总结: package org.bulktree.test; import java.util.StringTokenizer; /** *//** * * @author bulktree Email: laoshulin@gmail.com * @date Jul 31, 2008 */ public class SplitTest { public static void main(String[] args) { SplitTe

Java的字符串函数集锦

java中的字符串也是一连串的字符.但是与许多其他的计算机语言将字符串作为字符数组处理不同,Java将字符串作为String类型对象来处理.将字符串作为内置的对象处理允许Java提供十分丰富的功能特性以方便处理字符串.下面是一些使用频率比较高的函数及其相关说明.  String相关函数 1)substring() 它有两种形式,第一种是:String substring(int startIndex) 第二种是:String substring(int startIndex,int endInd

Java截取字符串的方法

  本文实例讲述了Java截取字符串的方法.分享给大家供大家参考.具体实现方法如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 public static void main(String args[]) { //以该字符第一次出现,开始截取 //String str="abc.def"; //String str="abc.def.sdfsdf.fsdfd.ddddd.ggggg.ttttt"; //String str1=str.subst

要求在这里-java分割字符串新人求助

问题描述 java分割字符串新人求助 解决方案 String a=""abcd.e.fg""; String[] ss = a.split(""[.]""); for(String i : ss) System.out.println(i); 解决方案二: String[] s=""ab.cd"".split(""\.|); for (String o : s) {

java提取字符串的正则表达式

问题描述 java提取字符串的正则表达式 数据格式:{""collectTime"":""2015-11-11 10:08:27""dateTime"":""1447207707612hostName"":""SW-ADMIN-S5750-A0102""instanceId"":""260

java截断字符串问题,用逗号截断,但是值里面有逗号

问题描述 java截断字符串问题,用逗号截断,但是值里面有逗号 一个SQL语句的values里面的值,这里是三个字段,null,'0,1,2,3','2014-03-12 18:38:26.467319' 现在的问题是用逗号截断,第二个字段的值'0,1,2,3'也会被截断,求解决方法,怎么截断成三个 串 null 0,1,2,3 2014-03-12 18:38:26.467319 解决方案 public static void main(String[] args) { String s =

用 ava实现字符串反转-用Java实现字符串反转

问题描述 用Java实现字符串反转 解决方案 这么多种,自己看吧http://www.oschina.net/code/snippet_12_9060 解决方案二: java里哪里来的指针?你的题目分明是C的.再说,这种问题自己google就有结果了. 解决方案三: public class test{public static void main(String[] args) {Scanner input = new Scanner(System.in);System.out.print("&

Java String字符串补0或空格的实现代码_java

废话不多说了,关键代码如下所示: package cn.com.songjy; import java.text.NumberFormat; //Java 中给数字左边补0 public class NumberFormatTest { public static void main(String[] args) { // 待测试数据 int i = 1; // 得到一个NumberFormat的实例 NumberFormat nf = NumberFormat.getInstance(); /