Java在利用反射條件下替換英文字母中的值
創(chuàng)新互聯(lián)公司專注于延壽企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè)公司,電子商務(wù)商城網(wǎng)站建設(shè)。延壽網(wǎng)站建設(shè)公司,為延壽等地區(qū)提供建站服務(wù)。全流程按需定制,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)
(1)創(chuàng)建兩個(gè)Class:
ReflectTest類如下:
package cn.itcast.day01; import java.lang.reflect.Constructor; import java.lang.reflect.Field; public class ReflectTest { public static void main(String[] args) throws Exception { changeStringValue(pt1); System.out.println(pt1); } private static void changeStringValue(Object obj) throws Exception{ Field[] fields = obj.getClass().getFields(); for(Field field :fields){ //if(field.getType().equals(String.class)){ if(field.getType() == String.class){ //同一個(gè)字節(jié)碼用等號(hào) 而不是用equal String oldValue = (String) field.get(obj); String newValue = oldValue.replace('b','a'); field.set(obj, newValue); } } } }
ReflectPoint類如下:
package cn.itcast.day01; public class ReflectPoint { public String str1 = "ball"; public String str2 = "basketball"; public String str3 = "itcast"; public ReflectPoint(int x, int y) { super(); this.x = x; this.y = y; } public String toString(){ return str1+":"+str2+":"+str3; } public static void main(String[] args) { // TODO Auto-generated method stub } }
結(jié)果為:aall:aasketaall:itcast
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)創(chuàng)新互聯(lián)的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接