怎樣在JAVA寫一個(gè)含未知類的參數(shù)的方法
問(wèn)題描述
private String getMainTitle(List<String> bs){ for(String b:bs){if (b.equals('GOOD'){ return 'string';} }return null;}private String getMainTitle(String b){ if (b.equals('GOOD'){return 'string'; }return null;}public String getTitleFromString(String b){ return getMainTitle(b);}public String getTitleFromList(List<String> bs){return getMainTitle(bs);}
請(qǐng)問(wèn)怎樣在JAVA寫一個(gè)含未知類的參數(shù)的方法?
希望寫一個(gè)方法能替代getTitleFromString和getTitleFromList , 比如:
public String getTitleFromList(T<?> t){return getMainTitle(t);}
但我的語(yǔ)法有誤, 請(qǐng)問(wèn)該怎樣改寫?
問(wèn)題解答
回答1:public String <T> getMainTitle(T obj){ if(Map.class.isAssignableFrom(obj.getClass())){((Map<?, ?>) data).forEach((k, v) -> { if (v.equals('GOOD')) {return 'string'; } });} else if(Vector.class.isAssignableFrom(obj.getClass())){for(String b:bs){ if (b.equals('GOOD')) {return 'string'; }} } else if ( b.equals('GOOD') ){return 'string'; } return null;}回答2:
private String getMainTitle(List<String> bs){for(String b:bs){ if (b.equals('GOOD')) {return 'string'; }}return null; } private String getMainTitle(String b){if (b.equals('GOOD')) { return 'string';}return null; } public String getTitleFrom(String b){return getMainTitle(b); } public String getTitleFrom(List<String> bs){return getMainTitle(bs); }回答3:
這樣可行
private <T> T getMainTitle(T t){ if (t.equals('GOOD')){return (T)'string'; } return null;}public <T> T getTitleFromString(T t){ return getMainTitle(t);}回答4:
// Object...objs相當(dāng)一個(gè)Object[]數(shù)組,用來(lái)當(dāng)做參數(shù),表示有未知個(gè)參數(shù)傳入,甚至可以不傳參!public String getMainTitle(Object...objs) { for (Object obj : objs) { if(obj.toString().equals('GOOD')){ return 'string'; } } return null;}// 使用public void static main(String[] args) { getMainTitle(); getMainTitle('sdfds', 'Goods', 'GOOD'); getMainTitle(true, 'GOOD'); getMainTitle(111,1111);}
相關(guān)文章:
1. docker 17.03 怎么配置 registry mirror ?2. javascript - sublime快鍵鍵問(wèn)題3. javascript - immutable配合react提升性能?4. DADB.class.php文件的代碼怎么寫5. javascript - html5多個(gè)label中其中一個(gè)觸發(fā)change,如何判斷是哪一個(gè)出發(fā)了change6. phpstudy8.1支持win11系統(tǒng)嗎?7. mysql事務(wù)回滾定位8. css - 寫頁(yè)面遇到個(gè)布局問(wèn)題,求大佬們幫解答,在線等,急!~9. 實(shí)現(xiàn)bing搜索工具urlAPI提交10. 配置Apache時(shí),添加對(duì)PHP的支持時(shí)語(yǔ)法錯(cuò)誤

網(wǎng)公網(wǎng)安備