You need to sign in to do that
Don't have an account?
Unexpected String Comparison result
i have some code in apex a function basically
public PageReference find(){
System.debug('Helloji');
describe.uniqueFields= new Map<String,String>();
List<String> ss = xxx1.split(';');
System.debug('ss is '+ss );
System.debug('all fields are '+ describe.allFieldsKeySet);
for(String s : ss)
{
System.debug('s is'+s);
describe.uniqueFields.put(s,describe.allFields.get(s).label);
}
return null;}
in this function i am getting two logs
11:20:53.322 (322688000)|USER_DEBUG|[450]|DEBUG|all fields are (AccountNumber, AccountSource, Active__c, AnnualRevenue, BillingCity, BillingCountry, BillingLatitude, BillingLongitude, BillingPostalCode, BillingState, ...)
11:20:53.322 (322278000)|USER_DEBUG|[449]|DEBUG|ss is ([AccountSource])
11:20:53.322 (322829000)|USER_DEBUG|[455]|DEBUG|s is[AccountSource]
i am not getting why its showing
s =[AccountSource]
it should be like s = AccountSource .after that i applied s.removeStart('['); s.removeEnd(']');
still getting same value of s
because it is not AccountSource so
describe.allFields.get(s).labelis getting de - referencing null object because describe.allFields.get(s) returning null thats why
here allFields a map <String, CustomClass>()
and allFieldsKeySet is the keyset of allFields .can you please help how to resove this issue and why s is [AccountSource] no AccountSource