java - Nested loops for specific numbers -



java - Nested loops for specific numbers -

i have method takes in 2 ints method(int ii, int xx). want loop through range of values cant think of way without hard coding each value.

when ii = 21, want xx = 19 through 9 when ii = 20, want xx = 18 through 12

so hard coded be:

method(21,19) method(21,18) ... method(21,10) method(21,9) method(20,18) method(20,17) ... method(20,13) method(20,12)

this have far doesnt handle spcific cases dont want method(4,19)

for(int ii = 9;ii<21;ii++){ for(int xx = 4;xx<19;xx++){ method(ii,xx); } }

as suggested edd, you'll want utilize map. suggest creating range class represent integer range xx values, can build map of integer --> range (ii --> xx):

static class range { public final int start; public final int end; public range(int start, int end) { this.start = start; this.end = end; } } static final map<integer,range> range_map = new hashmap<integer,range>(); static { range_map.put(21, new range(9,19)); range_map.put(20, new range(12,18)); // ... } void calling_method() { for(entry<integer,range> entry : range_map.entryset()) { int ii = entry.getkey(); range r = entry.getvalue(); for(int xx = r.start; xx <= r.end; xx++){ method(ii,xx); } } } void method(int ii, int xx) { // stuff }

java for-loop nested-loops

Comments

Popular posts from this blog

How do I check if an insert was successful with MySQLdb in Python? -

delphi - blogger via idHTTP : error 400 bad request -

postgresql - ERROR: operator is not unique: unknown + unknown -